{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "质数\n"
     ]
    }
   ],
   "source": [
    "num  = int(input(\"请输入一个数字\"))\n",
    "if num == 2 or num == 3 or num ==  5 or num==7:\n",
    "\tprint(\"质数\")\n",
    "elif num % 2 !=0 and num %3 !=0 and num %5!=0 and num %7!=0:\n",
    "\tprint(\"质数\")\n",
    "else:\n",
    "\tprint(\"不是质数\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "c\n"
     ]
    }
   ],
   "source": [
    "# 判断闰平年\n",
    "s = \"abacdh\"\n",
    "m = 2\n",
    "n = 1\n",
    "d = {}\n",
    "for x in s:\n",
    "\tif x not in d:\n",
    "\t\td[x] = 1\n",
    "\telse:\n",
    "\t\td[x] = d[x]+1\n",
    "d = {k:v for k,v in d.items() if v == 1}\n",
    "for index,item in enumerate(d.items()):\n",
    "\tif item[1] == 1 and index == 1:\n",
    "\t\tprint(item[0])\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "outputs": [],
   "source": [
    "import pandas  as pd\n",
    "import matplotlib.pyplot as plt\n",
    "from sklearn.ensemble import RandomForestClassifier\n",
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.metrics import accuracy_score\n",
    "from sklearn.svm import SVC\n",
    "plt.rcParams[\"font.sans-serif\"] = [\"SimHei\"]\n",
    "plt.rcParams[\"axes.unicode_minus\"] = False\n",
    "import random\n",
    "import numpy as np\n",
    "from sqlalchemy import create_engine\n",
    "import pymysql"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "outputs": [
    {
     "data": {
      "text/plain": "81"
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "conn = create_engine('mysql+pymysql://root:123456@localhost/db_16')\n",
    "df = pd.read_excel(\"空中食宿数据集SQL的部分.xlsx\",sheet_name=\"Sheet1\")"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "outputs": [],
   "source": [
    "connection = pymysql.connect(host='localhost',\n",
    "                             user='root',\n",
    "                             password='123456',\n",
    "                             database='db_16')\n",
    "\n",
    "cursor = connection.cursor()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "outputs": [
    {
     "data": {
      "text/plain": "0"
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sql = \"\"\"\n",
    "CREATE TABLE `airbnb` (\n",
    "  `id` bigint(20) DEFAULT NULL,\n",
    "  `name` text,\n",
    "  `host_id` bigint(20) DEFAULT NULL,\n",
    "  `host_name` text,\n",
    "  `neighbourhood_group` text,\n",
    "  `neighbourhood` text,\n",
    "  `latitude` double DEFAULT NULL,\n",
    "  `longitude` double DEFAULT NULL,\n",
    "  `room_type` text,\n",
    "  `price` bigint(20) DEFAULT NULL,\n",
    "  `minimum_nights` bigint(20) DEFAULT NULL,\n",
    "  `number_of_reviews` bigint(20) DEFAULT NULL,\n",
    "  `last_review` datetime DEFAULT NULL,\n",
    "  `reviews_per_month` double DEFAULT NULL,\n",
    "  `calculated_host_listings_count` bigint(20) DEFAULT NULL,\n",
    "  `availability_365` bigint(20) DEFAULT NULL\n",
    ") ENGINE=InnoDB DEFAULT CHARSET=utf8;\n",
    "\"\"\"\n",
    "cursor.execute(sql)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "outputs": [
    {
     "data": {
      "text/plain": "81"
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.to_sql(\"airbnb\",conn,index=False,if_exists=\"append\")\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "outputs": [
    {
     "data": {
      "text/plain": "((3831,\n  'Cozy Entire Floor of Brownstone',\n  4869,\n  'LisaRoxanne',\n  'Brooklyn',\n  'Clinton Hill',\n  40.68514,\n  -73.95976,\n  'Entire home/apt',\n  89,\n  1,\n  270,\n  datetime.datetime(2023, 7, 5, 0, 0),\n  4.64,\n  1,\n  194),\n (5178,\n  \"Large Furnished Room Near B'way \",\n  8967,\n  'Shunichi',\n  'Manhattan',\n  \"Hell's Kitchen\",\n  40.76489,\n  -73.98493,\n  'Private room',\n  79,\n  2,\n  430,\n  datetime.datetime(2023, 6, 24, 0, 0),\n  3.47,\n  1,\n  220),\n (7322,\n  'Chelsea Perfect',\n  18946,\n  'Doti',\n  'Manhattan',\n  'Chelsea',\n  40.74192,\n  -73.99501,\n  'Private room',\n  140,\n  1,\n  260,\n  datetime.datetime(2023, 7, 1, 0, 0),\n  2.12,\n  1,\n  12),\n (7726,\n  'Hip Historic Brownstone Apartment with Backyard',\n  20950,\n  'Adam And Charity',\n  'Brooklyn',\n  'Crown Heights',\n  40.67592,\n  -73.94694,\n  'Entire home/apt',\n  99,\n  3,\n  53,\n  datetime.datetime(2023, 6, 22, 0, 0),\n  4.44,\n  1,\n  21),\n (9668,\n  'front room/double bed',\n  32294,\n  'Ssameer Or Trip',\n  'Manhattan',\n  'Harlem',\n  40.82245,\n  -73.95104,\n  'Private room',\n  50,\n  3,\n  242,\n  datetime.datetime(2023, 6, 1, 0, 0),\n  2.04,\n  3,\n  355),\n (9783,\n  'back room/bunk beds',\n  32294,\n  'Ssameer Or Trip',\n  'Manhattan',\n  'Harlem',\n  40.8213,\n  -73.95318,\n  'Private room',\n  50,\n  3,\n  273,\n  datetime.datetime(2023, 7, 1, 0, 0),\n  2.37,\n  3,\n  359),\n (12192,\n  'ENJOY Downtown NYC!',\n  46978,\n  'Edward',\n  'Manhattan',\n  'East Village',\n  40.7229,\n  -73.98199,\n  'Private room',\n  68,\n  2,\n  245,\n  datetime.datetime(2023, 6, 21, 0, 0),\n  2.08,\n  2,\n  96),\n (12937,\n  '1 Stop fr. Manhattan! Private Suite,Landmark Block',\n  50124,\n  'Orestes',\n  'Queens',\n  'Long Island City',\n  40.74771,\n  -73.9474,\n  'Private room',\n  130,\n  3,\n  248,\n  datetime.datetime(2023, 7, 1, 0, 0),\n  2.25,\n  1,\n  215),\n (14314,\n  'Greenpoint Place...Has It All! ',\n  56246,\n  'Jeanne',\n  'Brooklyn',\n  'Greenpoint',\n  40.73506,\n  -73.95392,\n  'Entire home/apt',\n  144,\n  2,\n  328,\n  datetime.datetime(2023, 6, 29, 0, 0),\n  2.82,\n  1,\n  234),\n (15220,\n  'Best Location in NYC! TIMES SQUARE!',\n  59734,\n  'Luiz',\n  'Manhattan',\n  \"Hell's Kitchen\",\n  40.75531,\n  -73.99293,\n  'Private room',\n  69,\n  2,\n  289,\n  datetime.datetime(2023, 6, 9, 0, 0),\n  2.49,\n  2,\n  294),\n (16580,\n  'Sunny, Modern room in East Village!',\n  64442,\n  'Reka',\n  'Manhattan',\n  'East Village',\n  40.72649,\n  -73.97904,\n  'Private room',\n  80,\n  1,\n  338,\n  datetime.datetime(2023, 7, 1, 0, 0),\n  4.72,\n  2,\n  72))"
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sql = \"select * from airbnb where  reviews_per_month > 2 \"\n",
    "cursor.execute(sql)\n",
    "cursor.fetchall()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "outputs": [],
   "source": [
    "sql = \"update airbnb set reviews_per_month = 4 where host_id = %s \"\n",
    "cursor.execute(sql,args=(7702,))\n",
    "connection.commit()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "outputs": [],
   "source": [
    "sql = \"delete from airbnb where availability_365 = %s\"\n",
    "cursor.execute(sql,args=(0,))\n",
    "connection.commit()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "outputs": [],
   "source": [
    "sql = \"insert into airbnb values (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)\"\n",
    "cursor.executemany(sql,args=(('18591', 'Fort Greene Retreat on the Park', '71512', 'Blaise', 'Brooklyn', 'Fort Greene', '40.6932', '-73.97267', 'Private room', '95', '3', '143', '2023-06-16 00:00:00', '1.28', '1', '132'),('18592', 'Fort Greene Retreat on the Park', '71512', 'Blaise', 'Brooklyn', 'Fort Greene', '40.6932', '-73.97267', 'Private room', '95', '3', '143', '2023-06-16 00:00:00', '1.28', '1', '132'),('18593', 'Fort Greene Retreat on the Park', '71512', 'Blaise', 'Brooklyn', 'Fort Greene', '40.6932', '-73.97267', 'Private room', '95', '3', '143', '2023-06-16 00:00:00', '1.28', '1', '132')))\n",
    "connection.commit()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_3068\\3727760274.py:1: DtypeWarning: Columns (0) have mixed types. Specify dtype option on import or set low_memory=False.\n",
      "  df1 = pd.read_csv(\"C:\\\\Users\\\\Administrator\\\\Desktop\\\\Python数据分析\\\\月考题\\\\大数据 大数据系 专高5 《Python数据分析EDA》月考题库（修改2）\\\\3-2 大数据 大数据系 专高5 《Python数据分析EDA》月考题库（新建）-已入库\\\\3-2 大数据 大数据系 专高5 《Python数据分析EDA》月考题库（新建）-已入库\\\\02-02-5-00009\\\\(Airbnb)空中食宿数据集(CSV的部分).csv\")\n"
     ]
    },
    {
     "data": {
      "text/plain": "             id                                              name    host_id  \\\n0         19159              Spacious luminous apt Upper West NYC      73051   \n1         19169                  Entire 2 Bedroom - Large & Sunny      73128   \n2         19282                   Sunny, Spacious Top Floor Haven      73469   \n3         19319        Private room Great Deal at Lower East Side      44263   \n4         19601               perfect for a family or small group      74303   \n...         ...                                               ...        ...   \n48369  36455402  Cute plant friendly studio in hip Brooklyn area!  184501278   \n48370  36455584         Large studio at Union Square! for 3-5 ppl   50812891   \n48371  36455649  #7 New Hotel-Like Private Room KING bed near JFK  263504959   \n48372  36455809           Cozy Private Room in Bushwick, Brooklyn   74162901   \n48373  36455917    Sunny&quiet paradise in the WV with open views  274103383   \n\n       host_name neighbourhood_group     neighbourhood  latitude  longitude  \\\n0        Sybilla           Manhattan            Harlem  40.82915  -73.95136   \n1         JoLynn           Manhattan   Lower East Side  40.71851  -73.98892   \n2           Gaia            Brooklyn          Flatbush  40.65401  -73.96323   \n3            Ana           Manhattan   Lower East Side   40.7114  -73.98794   \n4         Maggie            Brooklyn  Brooklyn Heights  40.69723  -73.99268   \n...          ...                 ...               ...       ...        ...   \n48369         Em            Brooklyn     Crown Heights  40.67198  -73.95329   \n48370       Molo           Manhattan      East Village  40.73231  -73.98689   \n48371      David              Queens         Woodhaven  40.69137  -73.86591   \n48372  Christine            Brooklyn          Bushwick  40.69805  -73.92801   \n48373   Jennifer           Manhattan      West Village  40.73444  -74.00335   \n\n             room_type price minimum_nights number_of_reviews last_review  \\\n0      Entire home/apt   110             31                54   2023/3/23   \n1      Entire home/apt   285              5                70   2023/6/30   \n2      Entire home/apt   130              6                16   2023/6/15   \n3         Private room    94             30                94    2023/4/8   \n4      Entire home/apt   800              1                25    2020/8/4   \n...                ...   ...            ...               ...         ...   \n48369  Entire home/apt   180              1                 0         NaN   \n48370  Entire home/apt   159              1                 0         NaN   \n48371     Private room    35              1                 0         NaN   \n48372     Private room    30              1                 1    2023/7/8   \n48373     Private room   202              2                 0         NaN   \n\n      reviews_per_month calculated_host_listings_count  availability_365  \n0                  0.49                              1             209.0  \n1                  0.62                              1             328.0  \n2                  0.15                              1              38.0  \n3                  0.84                              1             188.0  \n4                  0.24                              1               7.0  \n...                 ...                            ...               ...  \n48369               NaN                              1             165.0  \n48370               NaN                              1             166.0  \n48371               NaN                              8             341.0  \n48372                 1                              1               1.0  \n48373               NaN                              1              84.0  \n\n[48374 rows x 16 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>name</th>\n      <th>host_id</th>\n      <th>host_name</th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>room_type</th>\n      <th>price</th>\n      <th>minimum_nights</th>\n      <th>number_of_reviews</th>\n      <th>last_review</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>19159</td>\n      <td>Spacious luminous apt Upper West NYC</td>\n      <td>73051</td>\n      <td>Sybilla</td>\n      <td>Manhattan</td>\n      <td>Harlem</td>\n      <td>40.82915</td>\n      <td>-73.95136</td>\n      <td>Entire home/apt</td>\n      <td>110</td>\n      <td>31</td>\n      <td>54</td>\n      <td>2023/3/23</td>\n      <td>0.49</td>\n      <td>1</td>\n      <td>209.0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>19169</td>\n      <td>Entire 2 Bedroom - Large &amp; Sunny</td>\n      <td>73128</td>\n      <td>JoLynn</td>\n      <td>Manhattan</td>\n      <td>Lower East Side</td>\n      <td>40.71851</td>\n      <td>-73.98892</td>\n      <td>Entire home/apt</td>\n      <td>285</td>\n      <td>5</td>\n      <td>70</td>\n      <td>2023/6/30</td>\n      <td>0.62</td>\n      <td>1</td>\n      <td>328.0</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>19282</td>\n      <td>Sunny, Spacious Top Floor Haven</td>\n      <td>73469</td>\n      <td>Gaia</td>\n      <td>Brooklyn</td>\n      <td>Flatbush</td>\n      <td>40.65401</td>\n      <td>-73.96323</td>\n      <td>Entire home/apt</td>\n      <td>130</td>\n      <td>6</td>\n      <td>16</td>\n      <td>2023/6/15</td>\n      <td>0.15</td>\n      <td>1</td>\n      <td>38.0</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>19319</td>\n      <td>Private room Great Deal at Lower East Side</td>\n      <td>44263</td>\n      <td>Ana</td>\n      <td>Manhattan</td>\n      <td>Lower East Side</td>\n      <td>40.7114</td>\n      <td>-73.98794</td>\n      <td>Private room</td>\n      <td>94</td>\n      <td>30</td>\n      <td>94</td>\n      <td>2023/4/8</td>\n      <td>0.84</td>\n      <td>1</td>\n      <td>188.0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>19601</td>\n      <td>perfect for a family or small group</td>\n      <td>74303</td>\n      <td>Maggie</td>\n      <td>Brooklyn</td>\n      <td>Brooklyn Heights</td>\n      <td>40.69723</td>\n      <td>-73.99268</td>\n      <td>Entire home/apt</td>\n      <td>800</td>\n      <td>1</td>\n      <td>25</td>\n      <td>2020/8/4</td>\n      <td>0.24</td>\n      <td>1</td>\n      <td>7.0</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>48369</th>\n      <td>36455402</td>\n      <td>Cute plant friendly studio in hip Brooklyn area!</td>\n      <td>184501278</td>\n      <td>Em</td>\n      <td>Brooklyn</td>\n      <td>Crown Heights</td>\n      <td>40.67198</td>\n      <td>-73.95329</td>\n      <td>Entire home/apt</td>\n      <td>180</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>165.0</td>\n    </tr>\n    <tr>\n      <th>48370</th>\n      <td>36455584</td>\n      <td>Large studio at Union Square! for 3-5 ppl</td>\n      <td>50812891</td>\n      <td>Molo</td>\n      <td>Manhattan</td>\n      <td>East Village</td>\n      <td>40.73231</td>\n      <td>-73.98689</td>\n      <td>Entire home/apt</td>\n      <td>159</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>166.0</td>\n    </tr>\n    <tr>\n      <th>48371</th>\n      <td>36455649</td>\n      <td>#7 New Hotel-Like Private Room KING bed near JFK</td>\n      <td>263504959</td>\n      <td>David</td>\n      <td>Queens</td>\n      <td>Woodhaven</td>\n      <td>40.69137</td>\n      <td>-73.86591</td>\n      <td>Private room</td>\n      <td>35</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>8</td>\n      <td>341.0</td>\n    </tr>\n    <tr>\n      <th>48372</th>\n      <td>36455809</td>\n      <td>Cozy Private Room in Bushwick, Brooklyn</td>\n      <td>74162901</td>\n      <td>Christine</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.69805</td>\n      <td>-73.92801</td>\n      <td>Private room</td>\n      <td>30</td>\n      <td>1</td>\n      <td>1</td>\n      <td>2023/7/8</td>\n      <td>1</td>\n      <td>1</td>\n      <td>1.0</td>\n    </tr>\n    <tr>\n      <th>48373</th>\n      <td>36455917</td>\n      <td>Sunny&amp;quiet paradise in the WV with open views</td>\n      <td>274103383</td>\n      <td>Jennifer</td>\n      <td>Manhattan</td>\n      <td>West Village</td>\n      <td>40.73444</td>\n      <td>-74.00335</td>\n      <td>Private room</td>\n      <td>202</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>84.0</td>\n    </tr>\n  </tbody>\n</table>\n<p>48374 rows × 16 columns</p>\n</div>"
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df1 = pd.read_csv(\"C:\\\\Users\\\\Administrator\\\\Desktop\\\\Python数据分析\\\\月考题\\\\大数据 大数据系 专高5 《Python数据分析EDA》月考题库（修改2）\\\\3-2 大数据 大数据系 专高5 《Python数据分析EDA》月考题库（新建）-已入库\\\\3-2 大数据 大数据系 专高5 《Python数据分析EDA》月考题库（新建）-已入库\\\\02-02-5-00009\\\\(Airbnb)空中食宿数据集(CSV的部分).csv\")\n",
    "df1.drop(columns=[\"Unnamed: 16\",\"Unnamed: 17\",\"Unnamed: 18\"],inplace=True,axis=1)\n",
    "df1"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "outputs": [
    {
     "data": {
      "text/plain": "          id                                               name    host_id  \\\n0   36456829                  Perfectly Located Organic Getaway    6677425   \n1   36457700  Large 3 bed, 2 bath , garden , bbq , all you need   66993395   \n2   36468375       two girls room , I speak Chinese and English  274188386   \n3   36468409    One bedroom Manhattan Upper East Side Apartment   57502664   \n4   36468880          Private room in a nice Brooklyn apartment  274195458   \n5   36469741                Comfortable & Big room with 2 beds!  274012871   \n6   36471896    Private Bedroom & PRIVATE BATHROOM in Manhattan   23548340   \n7   36472171                      1 bedroom in sunlit apartment   99144947   \n8   36472710                                 CozyHideAway Suite  274225617   \n9   36473044    The place you were dreaming for.(only for guys)  261338177   \n10  36473253                       Heaven for you(only for guy)  261338177   \n11  36474023                        Cozy, Sunny Brooklyn Escape    1550580   \n12  36474911      Cozy, clean Williamsburg 1- bedroom apartment    1273444   \n13  36475746      A LARGE ROOM - 1 MONTH MINIMUM - WASHER&DRYER  144008701   \n14  36476675                                      Nycity-MyHome    8636072   \n15  36477307                                  Brooklyn paradise  241945355   \n16  36477588                   Short Term Rental in East Harlem  214535893   \n17  36478343                              Welcome all as family  274273284   \n18  36478357    Cozy, Air-Conditioned Private Bedroom in Harlem  177932088   \n19  36479230             Studio sized room with beautiful light   65767720   \n20  36479723                                      Room for rest   41326856   \n21  36480292  Gorgeous 1.5 Bdr with a private yard- Williams...     540335   \n22  36481315  The Raccoon Artist Studio in Williamsburg New ...  208514239   \n23  36481615                   Peaceful space in Greenpoint, BK  274298453   \n24  36482231                          Bushwick _ Myrtle-Wyckoff   66058896   \n25  36482416       Sunny Bedroom NYC! Walking to Central Park!!  131529729   \n26  36482783        Brooklyn Oasis in the heart of Williamsburg  274307600   \n27  36482809    Stunning Bedroom NYC! Walking to Central Park!!  131529729   \n28  36483010                    Comfy 1 Bedroom in Midtown East  274311461   \n29  36483152    Garden Jewel Apartment in Williamsburg New York  208514239   \n30  36484087  Spacious Room w/ Private Rooftop, Central loca...  274321313   \n31  36484363                                 QUIT PRIVATE HOUSE  107716952   \n32  36484665    Charming one bedroom - newly renovated rowhouse    8232441   \n33  36485057      Affordable room in Bushwick/East Williamsburg    6570630   \n34  36485431            Sunny Studio at Historical Neighborhood   23492952   \n35  36485609               43rd St. Time Square-cozy single bed   30985759   \n36  36487245  Trendy duplex in the very heart of Hell's Kitchen   68119814   \n\n         host_name neighbourhood_group       neighbourhood  latitude  \\\n0           Isabel           Manhattan     Upper West Side  40.79753   \n1           Thomas            Brooklyn  Bedford-Stuyvesant  40.68886   \n2            Qizhi           Manhattan        East Village  40.73197   \n3             Omar           Manhattan     Upper East Side  40.76628   \n4          Abayomi            Brooklyn            Bushwick  40.69308   \n5           Stefan              Queens    Long Island City  40.76726   \n6            Sarah           Manhattan     Upper East Side  40.77192   \n7           Brenda           Manhattan              Inwood  40.86845   \n8          Alberth              Queens           Briarwood  40.70786   \n9            Diana            Brooklyn           Gravesend  40.59080   \n10           Diana            Brooklyn           Gravesend  40.59118   \n11           Julia            Brooklyn  Bedford-Stuyvesant  40.68759   \n12           Tanja            Brooklyn        Williamsburg  40.71197   \n13       Ozzy Ciao           Manhattan              Harlem  40.82233   \n14             Ben           Manhattan      Hell's Kitchen  40.76236   \n15  Clement & Rose            Brooklyn           Flatlands  40.63116   \n16         Jeffrey           Manhattan         East Harlem  40.79760   \n17       Anastasia           Manhattan         East Harlem  40.78749   \n18          Joseph           Manhattan              Harlem  40.80953   \n19         Melanie            Brooklyn            Bushwick  40.70418   \n20     Jeerathinan              Queens            Elmhurst  40.74477   \n21             Lee            Brooklyn        Williamsburg  40.71728   \n22           Melki            Brooklyn        Williamsburg  40.71232   \n23          Adrien            Brooklyn          Greenpoint  40.72585   \n24           Luisa            Brooklyn            Bushwick  40.69652   \n25         Kendall           Manhattan         East Harlem  40.79755   \n26        Jonathan            Brooklyn        Williamsburg  40.71790   \n27         Kendall           Manhattan         East Harlem  40.79633   \n28           Scott           Manhattan             Midtown  40.75561   \n29           Melki            Brooklyn        Williamsburg  40.71232   \n30             Kat           Manhattan      Hell's Kitchen  40.76392   \n31         Michael              Queens             Jamaica  40.69137   \n32         Sabrina            Brooklyn  Bedford-Stuyvesant  40.67853   \n33         Marisol            Brooklyn            Bushwick  40.70184   \n34   Ilgar & Aysel           Manhattan              Harlem  40.81475   \n35             Taz           Manhattan      Hell's Kitchen  40.75751   \n36      Christophe           Manhattan      Hell's Kitchen  40.76404   \n\n    longitude        room_type  price  minimum_nights  number_of_reviews  \\\n0   -73.96155      Shared room     55               2                  0   \n1   -73.92879  Entire home/apt    345               4                  0   \n2   -73.98674     Private room     93               7                  0   \n3   -73.95795  Entire home/apt    120               1                  0   \n4   -73.91025     Private room    130               1                  0   \n5   -73.93936     Private room     93               2                  0   \n6   -73.95369     Private room     95               1                  0   \n7   -73.92449     Private room     80               1                  0   \n8   -73.81448  Entire home/apt     58               1                  0   \n9   -73.97116      Shared room     25               1                  0   \n10  -73.97119      Shared room     25               7                  0   \n11  -73.95705     Private room     45               4                  0   \n12  -73.94946  Entire home/apt     99               4                  0   \n13  -73.94687     Private room     35              29                  0   \n14  -73.99255  Entire home/apt    260               3                  0   \n15  -73.92616  Entire home/apt    170               1                  0   \n16  -73.93947     Private room     50               7                  0   \n17  -73.94749     Private room    140               1                  0   \n18  -73.95410     Private room     60               1                  0   \n19  -73.91471     Private room     42               7                  0   \n20  -73.87727     Private room     45               1                  0   \n21  -73.94394  Entire home/apt    120              20                  0   \n22  -73.94220  Entire home/apt    120               1                  0   \n23  -73.94001     Private room     54               6                  0   \n24  -73.91079     Private room     40              20                  0   \n25  -73.93614     Private room     75               2                  0   \n26  -73.96238     Private room    190               7                  0   \n27  -73.93605     Private room     75               2                  0   \n28  -73.96723  Entire home/apt    200               6                  0   \n29  -73.94220  Entire home/apt    170               1                  0   \n30  -73.99183     Private room    125               4                  0   \n31  -73.80844     Private room     65               1                  0   \n32  -73.94995     Private room     70               2                  0   \n33  -73.93317     Private room     40               4                  0   \n34  -73.94867  Entire home/apt    115              10                  0   \n35  -73.99112      Shared room     55               1                  0   \n36  -73.98933     Private room     90               7                  0   \n\n    last_review  reviews_per_month  calculated_host_listings_count  \\\n0           NaN                NaN                               2   \n1           NaN                NaN                               3   \n2           NaN                NaN                               1   \n3           NaN                NaN                               1   \n4           NaN                NaN                               1   \n5           NaN                NaN                               2   \n6           NaN                NaN                               1   \n7           NaN                NaN                               1   \n8           NaN                NaN                               1   \n9           NaN                NaN                               6   \n10          NaN                NaN                               6   \n11          NaN                NaN                               1   \n12          NaN                NaN                               1   \n13          NaN                NaN                               2   \n14          NaN                NaN                               1   \n15          NaN                NaN                               2   \n16          NaN                NaN                               1   \n17          NaN                NaN                               1   \n18          NaN                NaN                               1   \n19          NaN                NaN                               1   \n20          NaN                NaN                               5   \n21          NaN                NaN                               1   \n22          NaN                NaN                               3   \n23          NaN                NaN                               1   \n24          NaN                NaN                               1   \n25          NaN                NaN                               2   \n26          NaN                NaN                               1   \n27          NaN                NaN                               2   \n28          NaN                NaN                               1   \n29          NaN                NaN                               3   \n30          NaN                NaN                               1   \n31          NaN                NaN                               2   \n32          NaN                NaN                               2   \n33          NaN                NaN                               2   \n34          NaN                NaN                               1   \n35          NaN                NaN                               6   \n36          NaN                NaN                               1   \n\n    availability_365  \n0                 49  \n1                354  \n2                173  \n3                  1  \n4                 83  \n5                 14  \n6                  2  \n7                 79  \n8                159  \n9                338  \n10               365  \n11                 7  \n12                22  \n13                31  \n14                 9  \n15               363  \n16                22  \n17               180  \n18                26  \n19                16  \n20               172  \n21                22  \n22               365  \n23                15  \n24                31  \n25               364  \n26               341  \n27               353  \n28               176  \n29               365  \n30                31  \n31               163  \n32                 9  \n33                36  \n34                27  \n35                 2  \n36                23  ",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>name</th>\n      <th>host_id</th>\n      <th>host_name</th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>room_type</th>\n      <th>price</th>\n      <th>minimum_nights</th>\n      <th>number_of_reviews</th>\n      <th>last_review</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>36456829</td>\n      <td>Perfectly Located Organic Getaway</td>\n      <td>6677425</td>\n      <td>Isabel</td>\n      <td>Manhattan</td>\n      <td>Upper West Side</td>\n      <td>40.79753</td>\n      <td>-73.96155</td>\n      <td>Shared room</td>\n      <td>55</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>49</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>36457700</td>\n      <td>Large 3 bed, 2 bath , garden , bbq , all you need</td>\n      <td>66993395</td>\n      <td>Thomas</td>\n      <td>Brooklyn</td>\n      <td>Bedford-Stuyvesant</td>\n      <td>40.68886</td>\n      <td>-73.92879</td>\n      <td>Entire home/apt</td>\n      <td>345</td>\n      <td>4</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>3</td>\n      <td>354</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>36468375</td>\n      <td>two girls room , I speak Chinese and English</td>\n      <td>274188386</td>\n      <td>Qizhi</td>\n      <td>Manhattan</td>\n      <td>East Village</td>\n      <td>40.73197</td>\n      <td>-73.98674</td>\n      <td>Private room</td>\n      <td>93</td>\n      <td>7</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>173</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>36468409</td>\n      <td>One bedroom Manhattan Upper East Side Apartment</td>\n      <td>57502664</td>\n      <td>Omar</td>\n      <td>Manhattan</td>\n      <td>Upper East Side</td>\n      <td>40.76628</td>\n      <td>-73.95795</td>\n      <td>Entire home/apt</td>\n      <td>120</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>36468880</td>\n      <td>Private room in a nice Brooklyn apartment</td>\n      <td>274195458</td>\n      <td>Abayomi</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.69308</td>\n      <td>-73.91025</td>\n      <td>Private room</td>\n      <td>130</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>83</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>36469741</td>\n      <td>Comfortable &amp; Big room with 2 beds!</td>\n      <td>274012871</td>\n      <td>Stefan</td>\n      <td>Queens</td>\n      <td>Long Island City</td>\n      <td>40.76726</td>\n      <td>-73.93936</td>\n      <td>Private room</td>\n      <td>93</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>14</td>\n    </tr>\n    <tr>\n      <th>6</th>\n      <td>36471896</td>\n      <td>Private Bedroom &amp; PRIVATE BATHROOM in Manhattan</td>\n      <td>23548340</td>\n      <td>Sarah</td>\n      <td>Manhattan</td>\n      <td>Upper East Side</td>\n      <td>40.77192</td>\n      <td>-73.95369</td>\n      <td>Private room</td>\n      <td>95</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>2</td>\n    </tr>\n    <tr>\n      <th>7</th>\n      <td>36472171</td>\n      <td>1 bedroom in sunlit apartment</td>\n      <td>99144947</td>\n      <td>Brenda</td>\n      <td>Manhattan</td>\n      <td>Inwood</td>\n      <td>40.86845</td>\n      <td>-73.92449</td>\n      <td>Private room</td>\n      <td>80</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>79</td>\n    </tr>\n    <tr>\n      <th>8</th>\n      <td>36472710</td>\n      <td>CozyHideAway Suite</td>\n      <td>274225617</td>\n      <td>Alberth</td>\n      <td>Queens</td>\n      <td>Briarwood</td>\n      <td>40.70786</td>\n      <td>-73.81448</td>\n      <td>Entire home/apt</td>\n      <td>58</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>159</td>\n    </tr>\n    <tr>\n      <th>9</th>\n      <td>36473044</td>\n      <td>The place you were dreaming for.(only for guys)</td>\n      <td>261338177</td>\n      <td>Diana</td>\n      <td>Brooklyn</td>\n      <td>Gravesend</td>\n      <td>40.59080</td>\n      <td>-73.97116</td>\n      <td>Shared room</td>\n      <td>25</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>6</td>\n      <td>338</td>\n    </tr>\n    <tr>\n      <th>10</th>\n      <td>36473253</td>\n      <td>Heaven for you(only for guy)</td>\n      <td>261338177</td>\n      <td>Diana</td>\n      <td>Brooklyn</td>\n      <td>Gravesend</td>\n      <td>40.59118</td>\n      <td>-73.97119</td>\n      <td>Shared room</td>\n      <td>25</td>\n      <td>7</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>6</td>\n      <td>365</td>\n    </tr>\n    <tr>\n      <th>11</th>\n      <td>36474023</td>\n      <td>Cozy, Sunny Brooklyn Escape</td>\n      <td>1550580</td>\n      <td>Julia</td>\n      <td>Brooklyn</td>\n      <td>Bedford-Stuyvesant</td>\n      <td>40.68759</td>\n      <td>-73.95705</td>\n      <td>Private room</td>\n      <td>45</td>\n      <td>4</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>7</td>\n    </tr>\n    <tr>\n      <th>12</th>\n      <td>36474911</td>\n      <td>Cozy, clean Williamsburg 1- bedroom apartment</td>\n      <td>1273444</td>\n      <td>Tanja</td>\n      <td>Brooklyn</td>\n      <td>Williamsburg</td>\n      <td>40.71197</td>\n      <td>-73.94946</td>\n      <td>Entire home/apt</td>\n      <td>99</td>\n      <td>4</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>22</td>\n    </tr>\n    <tr>\n      <th>13</th>\n      <td>36475746</td>\n      <td>A LARGE ROOM - 1 MONTH MINIMUM - WASHER&amp;DRYER</td>\n      <td>144008701</td>\n      <td>Ozzy Ciao</td>\n      <td>Manhattan</td>\n      <td>Harlem</td>\n      <td>40.82233</td>\n      <td>-73.94687</td>\n      <td>Private room</td>\n      <td>35</td>\n      <td>29</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>31</td>\n    </tr>\n    <tr>\n      <th>14</th>\n      <td>36476675</td>\n      <td>Nycity-MyHome</td>\n      <td>8636072</td>\n      <td>Ben</td>\n      <td>Manhattan</td>\n      <td>Hell's Kitchen</td>\n      <td>40.76236</td>\n      <td>-73.99255</td>\n      <td>Entire home/apt</td>\n      <td>260</td>\n      <td>3</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>9</td>\n    </tr>\n    <tr>\n      <th>15</th>\n      <td>36477307</td>\n      <td>Brooklyn paradise</td>\n      <td>241945355</td>\n      <td>Clement &amp; Rose</td>\n      <td>Brooklyn</td>\n      <td>Flatlands</td>\n      <td>40.63116</td>\n      <td>-73.92616</td>\n      <td>Entire home/apt</td>\n      <td>170</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>363</td>\n    </tr>\n    <tr>\n      <th>16</th>\n      <td>36477588</td>\n      <td>Short Term Rental in East Harlem</td>\n      <td>214535893</td>\n      <td>Jeffrey</td>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.79760</td>\n      <td>-73.93947</td>\n      <td>Private room</td>\n      <td>50</td>\n      <td>7</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>22</td>\n    </tr>\n    <tr>\n      <th>17</th>\n      <td>36478343</td>\n      <td>Welcome all as family</td>\n      <td>274273284</td>\n      <td>Anastasia</td>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.78749</td>\n      <td>-73.94749</td>\n      <td>Private room</td>\n      <td>140</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>180</td>\n    </tr>\n    <tr>\n      <th>18</th>\n      <td>36478357</td>\n      <td>Cozy, Air-Conditioned Private Bedroom in Harlem</td>\n      <td>177932088</td>\n      <td>Joseph</td>\n      <td>Manhattan</td>\n      <td>Harlem</td>\n      <td>40.80953</td>\n      <td>-73.95410</td>\n      <td>Private room</td>\n      <td>60</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>26</td>\n    </tr>\n    <tr>\n      <th>19</th>\n      <td>36479230</td>\n      <td>Studio sized room with beautiful light</td>\n      <td>65767720</td>\n      <td>Melanie</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.70418</td>\n      <td>-73.91471</td>\n      <td>Private room</td>\n      <td>42</td>\n      <td>7</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>16</td>\n    </tr>\n    <tr>\n      <th>20</th>\n      <td>36479723</td>\n      <td>Room for rest</td>\n      <td>41326856</td>\n      <td>Jeerathinan</td>\n      <td>Queens</td>\n      <td>Elmhurst</td>\n      <td>40.74477</td>\n      <td>-73.87727</td>\n      <td>Private room</td>\n      <td>45</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>5</td>\n      <td>172</td>\n    </tr>\n    <tr>\n      <th>21</th>\n      <td>36480292</td>\n      <td>Gorgeous 1.5 Bdr with a private yard- Williams...</td>\n      <td>540335</td>\n      <td>Lee</td>\n      <td>Brooklyn</td>\n      <td>Williamsburg</td>\n      <td>40.71728</td>\n      <td>-73.94394</td>\n      <td>Entire home/apt</td>\n      <td>120</td>\n      <td>20</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>22</td>\n    </tr>\n    <tr>\n      <th>22</th>\n      <td>36481315</td>\n      <td>The Raccoon Artist Studio in Williamsburg New ...</td>\n      <td>208514239</td>\n      <td>Melki</td>\n      <td>Brooklyn</td>\n      <td>Williamsburg</td>\n      <td>40.71232</td>\n      <td>-73.94220</td>\n      <td>Entire home/apt</td>\n      <td>120</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>3</td>\n      <td>365</td>\n    </tr>\n    <tr>\n      <th>23</th>\n      <td>36481615</td>\n      <td>Peaceful space in Greenpoint, BK</td>\n      <td>274298453</td>\n      <td>Adrien</td>\n      <td>Brooklyn</td>\n      <td>Greenpoint</td>\n      <td>40.72585</td>\n      <td>-73.94001</td>\n      <td>Private room</td>\n      <td>54</td>\n      <td>6</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>15</td>\n    </tr>\n    <tr>\n      <th>24</th>\n      <td>36482231</td>\n      <td>Bushwick _ Myrtle-Wyckoff</td>\n      <td>66058896</td>\n      <td>Luisa</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.69652</td>\n      <td>-73.91079</td>\n      <td>Private room</td>\n      <td>40</td>\n      <td>20</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>31</td>\n    </tr>\n    <tr>\n      <th>25</th>\n      <td>36482416</td>\n      <td>Sunny Bedroom NYC! Walking to Central Park!!</td>\n      <td>131529729</td>\n      <td>Kendall</td>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.79755</td>\n      <td>-73.93614</td>\n      <td>Private room</td>\n      <td>75</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>364</td>\n    </tr>\n    <tr>\n      <th>26</th>\n      <td>36482783</td>\n      <td>Brooklyn Oasis in the heart of Williamsburg</td>\n      <td>274307600</td>\n      <td>Jonathan</td>\n      <td>Brooklyn</td>\n      <td>Williamsburg</td>\n      <td>40.71790</td>\n      <td>-73.96238</td>\n      <td>Private room</td>\n      <td>190</td>\n      <td>7</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>341</td>\n    </tr>\n    <tr>\n      <th>27</th>\n      <td>36482809</td>\n      <td>Stunning Bedroom NYC! Walking to Central Park!!</td>\n      <td>131529729</td>\n      <td>Kendall</td>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.79633</td>\n      <td>-73.93605</td>\n      <td>Private room</td>\n      <td>75</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>353</td>\n    </tr>\n    <tr>\n      <th>28</th>\n      <td>36483010</td>\n      <td>Comfy 1 Bedroom in Midtown East</td>\n      <td>274311461</td>\n      <td>Scott</td>\n      <td>Manhattan</td>\n      <td>Midtown</td>\n      <td>40.75561</td>\n      <td>-73.96723</td>\n      <td>Entire home/apt</td>\n      <td>200</td>\n      <td>6</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>176</td>\n    </tr>\n    <tr>\n      <th>29</th>\n      <td>36483152</td>\n      <td>Garden Jewel Apartment in Williamsburg New York</td>\n      <td>208514239</td>\n      <td>Melki</td>\n      <td>Brooklyn</td>\n      <td>Williamsburg</td>\n      <td>40.71232</td>\n      <td>-73.94220</td>\n      <td>Entire home/apt</td>\n      <td>170</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>3</td>\n      <td>365</td>\n    </tr>\n    <tr>\n      <th>30</th>\n      <td>36484087</td>\n      <td>Spacious Room w/ Private Rooftop, Central loca...</td>\n      <td>274321313</td>\n      <td>Kat</td>\n      <td>Manhattan</td>\n      <td>Hell's Kitchen</td>\n      <td>40.76392</td>\n      <td>-73.99183</td>\n      <td>Private room</td>\n      <td>125</td>\n      <td>4</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>31</td>\n    </tr>\n    <tr>\n      <th>31</th>\n      <td>36484363</td>\n      <td>QUIT PRIVATE HOUSE</td>\n      <td>107716952</td>\n      <td>Michael</td>\n      <td>Queens</td>\n      <td>Jamaica</td>\n      <td>40.69137</td>\n      <td>-73.80844</td>\n      <td>Private room</td>\n      <td>65</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>163</td>\n    </tr>\n    <tr>\n      <th>32</th>\n      <td>36484665</td>\n      <td>Charming one bedroom - newly renovated rowhouse</td>\n      <td>8232441</td>\n      <td>Sabrina</td>\n      <td>Brooklyn</td>\n      <td>Bedford-Stuyvesant</td>\n      <td>40.67853</td>\n      <td>-73.94995</td>\n      <td>Private room</td>\n      <td>70</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>9</td>\n    </tr>\n    <tr>\n      <th>33</th>\n      <td>36485057</td>\n      <td>Affordable room in Bushwick/East Williamsburg</td>\n      <td>6570630</td>\n      <td>Marisol</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.70184</td>\n      <td>-73.93317</td>\n      <td>Private room</td>\n      <td>40</td>\n      <td>4</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>36</td>\n    </tr>\n    <tr>\n      <th>34</th>\n      <td>36485431</td>\n      <td>Sunny Studio at Historical Neighborhood</td>\n      <td>23492952</td>\n      <td>Ilgar &amp; Aysel</td>\n      <td>Manhattan</td>\n      <td>Harlem</td>\n      <td>40.81475</td>\n      <td>-73.94867</td>\n      <td>Entire home/apt</td>\n      <td>115</td>\n      <td>10</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>27</td>\n    </tr>\n    <tr>\n      <th>35</th>\n      <td>36485609</td>\n      <td>43rd St. Time Square-cozy single bed</td>\n      <td>30985759</td>\n      <td>Taz</td>\n      <td>Manhattan</td>\n      <td>Hell's Kitchen</td>\n      <td>40.75751</td>\n      <td>-73.99112</td>\n      <td>Shared room</td>\n      <td>55</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>6</td>\n      <td>2</td>\n    </tr>\n    <tr>\n      <th>36</th>\n      <td>36487245</td>\n      <td>Trendy duplex in the very heart of Hell's Kitchen</td>\n      <td>68119814</td>\n      <td>Christophe</td>\n      <td>Manhattan</td>\n      <td>Hell's Kitchen</td>\n      <td>40.76404</td>\n      <td>-73.98933</td>\n      <td>Private room</td>\n      <td>90</td>\n      <td>7</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>23</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df2 = pd.read_excel(\"C:\\\\Users\\\\Administrator\\\\Desktop\\\\Python数据分析\\\\月考题\\\\大数据 大数据系 专高5 《Python数据分析EDA》月考题库（修改2）\\\\3-2 大数据 大数据系 专高5 《Python数据分析EDA》月考题库（新建）-已入库\\\\3-2 大数据 大数据系 专高5 《Python数据分析EDA》月考题库（新建）-已入库\\\\02-02-5-00009\\\\(Airbnb)空中食宿数据集(Excel的部分).xlsx\")\n",
    "df2\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_3068\\3762376685.py:1: FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead.\n",
      "  df3 = df.append(df2)\n"
     ]
    },
    {
     "data": {
      "text/plain": "          id                                               name   host_id  \\\n0       2539                 Clean & quiet apt home by the park      2787   \n1       2595                              Skylit Midtown Castle      2845   \n2       3647                THE VILLAGE OF HARLEM....NEW YORK !      4632   \n3       3831                    Cozy Entire Floor of Brownstone      4869   \n4       5022   Entire Apt: Spacious Studio/Loft by central park      7192   \n..       ...                                                ...       ...   \n32  36484665    Charming one bedroom - newly renovated rowhouse   8232441   \n33  36485057      Affordable room in Bushwick/East Williamsburg   6570630   \n34  36485431            Sunny Studio at Historical Neighborhood  23492952   \n35  36485609               43rd St. Time Square-cozy single bed  30985759   \n36  36487245  Trendy duplex in the very heart of Hell's Kitchen  68119814   \n\n        host_name neighbourhood_group       neighbourhood  latitude  \\\n0            John            Brooklyn          Kensington  40.64749   \n1        Jennifer           Manhattan             Midtown  40.75362   \n2       Elisabeth           Manhattan              Harlem  40.80902   \n3     LisaRoxanne            Brooklyn        Clinton Hill  40.68514   \n4           Laura           Manhattan         East Harlem  40.79851   \n..            ...                 ...                 ...       ...   \n32        Sabrina            Brooklyn  Bedford-Stuyvesant  40.67853   \n33        Marisol            Brooklyn            Bushwick  40.70184   \n34  Ilgar & Aysel           Manhattan              Harlem  40.81475   \n35            Taz           Manhattan      Hell's Kitchen  40.75751   \n36     Christophe           Manhattan      Hell's Kitchen  40.76404   \n\n    longitude        room_type  price  minimum_nights  number_of_reviews  \\\n0   -73.97237     Private room    149               1                  9   \n1   -73.98377  Entire home/apt    225               1                 45   \n2   -73.94190     Private room    150               3                  0   \n3   -73.95976  Entire home/apt     89               1                270   \n4   -73.94399  Entire home/apt     80              10                  9   \n..        ...              ...    ...             ...                ...   \n32  -73.94995     Private room     70               2                  0   \n33  -73.93317     Private room     40               4                  0   \n34  -73.94867  Entire home/apt    115              10                  0   \n35  -73.99112      Shared room     55               1                  0   \n36  -73.98933     Private room     90               7                  0   \n\n            last_review  reviews_per_month  calculated_host_listings_count  \\\n0   2022-10-19 00:00:00               0.21                               6   \n1   2023-05-21 00:00:00               0.38                               2   \n2                   NaT                NaN                               1   \n3   2023-07-05 00:00:00               4.64                               1   \n4   2022-11-19 00:00:00               0.10                               1   \n..                  ...                ...                             ...   \n32                  NaN                NaN                               2   \n33                  NaN                NaN                               2   \n34                  NaN                NaN                               1   \n35                  NaN                NaN                               6   \n36                  NaN                NaN                               1   \n\n    availability_365  \n0                365  \n1                355  \n2                365  \n3                194  \n4                  0  \n..               ...  \n32                 9  \n33                36  \n34                27  \n35                 2  \n36                23  \n\n[118 rows x 16 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>name</th>\n      <th>host_id</th>\n      <th>host_name</th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>room_type</th>\n      <th>price</th>\n      <th>minimum_nights</th>\n      <th>number_of_reviews</th>\n      <th>last_review</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>2539</td>\n      <td>Clean &amp; quiet apt home by the park</td>\n      <td>2787</td>\n      <td>John</td>\n      <td>Brooklyn</td>\n      <td>Kensington</td>\n      <td>40.64749</td>\n      <td>-73.97237</td>\n      <td>Private room</td>\n      <td>149</td>\n      <td>1</td>\n      <td>9</td>\n      <td>2022-10-19 00:00:00</td>\n      <td>0.21</td>\n      <td>6</td>\n      <td>365</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>2595</td>\n      <td>Skylit Midtown Castle</td>\n      <td>2845</td>\n      <td>Jennifer</td>\n      <td>Manhattan</td>\n      <td>Midtown</td>\n      <td>40.75362</td>\n      <td>-73.98377</td>\n      <td>Entire home/apt</td>\n      <td>225</td>\n      <td>1</td>\n      <td>45</td>\n      <td>2023-05-21 00:00:00</td>\n      <td>0.38</td>\n      <td>2</td>\n      <td>355</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>3647</td>\n      <td>THE VILLAGE OF HARLEM....NEW YORK !</td>\n      <td>4632</td>\n      <td>Elisabeth</td>\n      <td>Manhattan</td>\n      <td>Harlem</td>\n      <td>40.80902</td>\n      <td>-73.94190</td>\n      <td>Private room</td>\n      <td>150</td>\n      <td>3</td>\n      <td>0</td>\n      <td>NaT</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>365</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>3831</td>\n      <td>Cozy Entire Floor of Brownstone</td>\n      <td>4869</td>\n      <td>LisaRoxanne</td>\n      <td>Brooklyn</td>\n      <td>Clinton Hill</td>\n      <td>40.68514</td>\n      <td>-73.95976</td>\n      <td>Entire home/apt</td>\n      <td>89</td>\n      <td>1</td>\n      <td>270</td>\n      <td>2023-07-05 00:00:00</td>\n      <td>4.64</td>\n      <td>1</td>\n      <td>194</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>5022</td>\n      <td>Entire Apt: Spacious Studio/Loft by central park</td>\n      <td>7192</td>\n      <td>Laura</td>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.79851</td>\n      <td>-73.94399</td>\n      <td>Entire home/apt</td>\n      <td>80</td>\n      <td>10</td>\n      <td>9</td>\n      <td>2022-11-19 00:00:00</td>\n      <td>0.10</td>\n      <td>1</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>32</th>\n      <td>36484665</td>\n      <td>Charming one bedroom - newly renovated rowhouse</td>\n      <td>8232441</td>\n      <td>Sabrina</td>\n      <td>Brooklyn</td>\n      <td>Bedford-Stuyvesant</td>\n      <td>40.67853</td>\n      <td>-73.94995</td>\n      <td>Private room</td>\n      <td>70</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>9</td>\n    </tr>\n    <tr>\n      <th>33</th>\n      <td>36485057</td>\n      <td>Affordable room in Bushwick/East Williamsburg</td>\n      <td>6570630</td>\n      <td>Marisol</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.70184</td>\n      <td>-73.93317</td>\n      <td>Private room</td>\n      <td>40</td>\n      <td>4</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>2</td>\n      <td>36</td>\n    </tr>\n    <tr>\n      <th>34</th>\n      <td>36485431</td>\n      <td>Sunny Studio at Historical Neighborhood</td>\n      <td>23492952</td>\n      <td>Ilgar &amp; Aysel</td>\n      <td>Manhattan</td>\n      <td>Harlem</td>\n      <td>40.81475</td>\n      <td>-73.94867</td>\n      <td>Entire home/apt</td>\n      <td>115</td>\n      <td>10</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>27</td>\n    </tr>\n    <tr>\n      <th>35</th>\n      <td>36485609</td>\n      <td>43rd St. Time Square-cozy single bed</td>\n      <td>30985759</td>\n      <td>Taz</td>\n      <td>Manhattan</td>\n      <td>Hell's Kitchen</td>\n      <td>40.75751</td>\n      <td>-73.99112</td>\n      <td>Shared room</td>\n      <td>55</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>6</td>\n      <td>2</td>\n    </tr>\n    <tr>\n      <th>36</th>\n      <td>36487245</td>\n      <td>Trendy duplex in the very heart of Hell's Kitchen</td>\n      <td>68119814</td>\n      <td>Christophe</td>\n      <td>Manhattan</td>\n      <td>Hell's Kitchen</td>\n      <td>40.76404</td>\n      <td>-73.98933</td>\n      <td>Private room</td>\n      <td>90</td>\n      <td>7</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>23</td>\n    </tr>\n  </tbody>\n</table>\n<p>118 rows × 16 columns</p>\n</div>"
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df3 = df.append(df2)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_3068\\2128976645.py:1: FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead.\n",
      "  data_frame01 = df3.append(df1)\n"
     ]
    },
    {
     "data": {
      "text/plain": "             id                                              name    host_id  \\\n0          2539                Clean & quiet apt home by the park       2787   \n1          2595                             Skylit Midtown Castle       2845   \n2          3647               THE VILLAGE OF HARLEM....NEW YORK !       4632   \n3          3831                   Cozy Entire Floor of Brownstone       4869   \n4          5022  Entire Apt: Spacious Studio/Loft by central park       7192   \n...         ...                                               ...        ...   \n48369  36455402  Cute plant friendly studio in hip Brooklyn area!  184501278   \n48370  36455584         Large studio at Union Square! for 3-5 ppl   50812891   \n48371  36455649  #7 New Hotel-Like Private Room KING bed near JFK  263504959   \n48372  36455809           Cozy Private Room in Bushwick, Brooklyn   74162901   \n48373  36455917    Sunny&quiet paradise in the WV with open views  274103383   \n\n         host_name neighbourhood_group  neighbourhood  latitude  longitude  \\\n0             John            Brooklyn     Kensington  40.64749  -73.97237   \n1         Jennifer           Manhattan        Midtown  40.75362  -73.98377   \n2        Elisabeth           Manhattan         Harlem  40.80902   -73.9419   \n3      LisaRoxanne            Brooklyn   Clinton Hill  40.68514  -73.95976   \n4            Laura           Manhattan    East Harlem  40.79851  -73.94399   \n...            ...                 ...            ...       ...        ...   \n48369           Em            Brooklyn  Crown Heights  40.67198  -73.95329   \n48370         Molo           Manhattan   East Village  40.73231  -73.98689   \n48371        David              Queens      Woodhaven  40.69137  -73.86591   \n48372    Christine            Brooklyn       Bushwick  40.69805  -73.92801   \n48373     Jennifer           Manhattan   West Village  40.73444  -74.00335   \n\n             room_type price minimum_nights number_of_reviews  \\\n0         Private room   149              1                 9   \n1      Entire home/apt   225              1                45   \n2         Private room   150              3                 0   \n3      Entire home/apt    89              1               270   \n4      Entire home/apt    80             10                 9   \n...                ...   ...            ...               ...   \n48369  Entire home/apt   180              1                 0   \n48370  Entire home/apt   159              1                 0   \n48371     Private room    35              1                 0   \n48372     Private room    30              1                 1   \n48373     Private room   202              2                 0   \n\n               last_review reviews_per_month calculated_host_listings_count  \\\n0      2022-10-19 00:00:00              0.21                              6   \n1      2023-05-21 00:00:00              0.38                              2   \n2                      NaT               NaN                              1   \n3      2023-07-05 00:00:00              4.64                              1   \n4      2022-11-19 00:00:00               0.1                              1   \n...                    ...               ...                            ...   \n48369                  NaN               NaN                              1   \n48370                  NaN               NaN                              1   \n48371                  NaN               NaN                              8   \n48372             2023/7/8                 1                              1   \n48373                  NaN               NaN                              1   \n\n       availability_365  \n0                 365.0  \n1                 355.0  \n2                 365.0  \n3                 194.0  \n4                   0.0  \n...                 ...  \n48369             165.0  \n48370             166.0  \n48371             341.0  \n48372               1.0  \n48373              84.0  \n\n[48492 rows x 16 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>name</th>\n      <th>host_id</th>\n      <th>host_name</th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>room_type</th>\n      <th>price</th>\n      <th>minimum_nights</th>\n      <th>number_of_reviews</th>\n      <th>last_review</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>2539</td>\n      <td>Clean &amp; quiet apt home by the park</td>\n      <td>2787</td>\n      <td>John</td>\n      <td>Brooklyn</td>\n      <td>Kensington</td>\n      <td>40.64749</td>\n      <td>-73.97237</td>\n      <td>Private room</td>\n      <td>149</td>\n      <td>1</td>\n      <td>9</td>\n      <td>2022-10-19 00:00:00</td>\n      <td>0.21</td>\n      <td>6</td>\n      <td>365.0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>2595</td>\n      <td>Skylit Midtown Castle</td>\n      <td>2845</td>\n      <td>Jennifer</td>\n      <td>Manhattan</td>\n      <td>Midtown</td>\n      <td>40.75362</td>\n      <td>-73.98377</td>\n      <td>Entire home/apt</td>\n      <td>225</td>\n      <td>1</td>\n      <td>45</td>\n      <td>2023-05-21 00:00:00</td>\n      <td>0.38</td>\n      <td>2</td>\n      <td>355.0</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>3647</td>\n      <td>THE VILLAGE OF HARLEM....NEW YORK !</td>\n      <td>4632</td>\n      <td>Elisabeth</td>\n      <td>Manhattan</td>\n      <td>Harlem</td>\n      <td>40.80902</td>\n      <td>-73.9419</td>\n      <td>Private room</td>\n      <td>150</td>\n      <td>3</td>\n      <td>0</td>\n      <td>NaT</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>365.0</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>3831</td>\n      <td>Cozy Entire Floor of Brownstone</td>\n      <td>4869</td>\n      <td>LisaRoxanne</td>\n      <td>Brooklyn</td>\n      <td>Clinton Hill</td>\n      <td>40.68514</td>\n      <td>-73.95976</td>\n      <td>Entire home/apt</td>\n      <td>89</td>\n      <td>1</td>\n      <td>270</td>\n      <td>2023-07-05 00:00:00</td>\n      <td>4.64</td>\n      <td>1</td>\n      <td>194.0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>5022</td>\n      <td>Entire Apt: Spacious Studio/Loft by central park</td>\n      <td>7192</td>\n      <td>Laura</td>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.79851</td>\n      <td>-73.94399</td>\n      <td>Entire home/apt</td>\n      <td>80</td>\n      <td>10</td>\n      <td>9</td>\n      <td>2022-11-19 00:00:00</td>\n      <td>0.1</td>\n      <td>1</td>\n      <td>0.0</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>48369</th>\n      <td>36455402</td>\n      <td>Cute plant friendly studio in hip Brooklyn area!</td>\n      <td>184501278</td>\n      <td>Em</td>\n      <td>Brooklyn</td>\n      <td>Crown Heights</td>\n      <td>40.67198</td>\n      <td>-73.95329</td>\n      <td>Entire home/apt</td>\n      <td>180</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>165.0</td>\n    </tr>\n    <tr>\n      <th>48370</th>\n      <td>36455584</td>\n      <td>Large studio at Union Square! for 3-5 ppl</td>\n      <td>50812891</td>\n      <td>Molo</td>\n      <td>Manhattan</td>\n      <td>East Village</td>\n      <td>40.73231</td>\n      <td>-73.98689</td>\n      <td>Entire home/apt</td>\n      <td>159</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>166.0</td>\n    </tr>\n    <tr>\n      <th>48371</th>\n      <td>36455649</td>\n      <td>#7 New Hotel-Like Private Room KING bed near JFK</td>\n      <td>263504959</td>\n      <td>David</td>\n      <td>Queens</td>\n      <td>Woodhaven</td>\n      <td>40.69137</td>\n      <td>-73.86591</td>\n      <td>Private room</td>\n      <td>35</td>\n      <td>1</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>8</td>\n      <td>341.0</td>\n    </tr>\n    <tr>\n      <th>48372</th>\n      <td>36455809</td>\n      <td>Cozy Private Room in Bushwick, Brooklyn</td>\n      <td>74162901</td>\n      <td>Christine</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.69805</td>\n      <td>-73.92801</td>\n      <td>Private room</td>\n      <td>30</td>\n      <td>1</td>\n      <td>1</td>\n      <td>2023/7/8</td>\n      <td>1</td>\n      <td>1</td>\n      <td>1.0</td>\n    </tr>\n    <tr>\n      <th>48373</th>\n      <td>36455917</td>\n      <td>Sunny&amp;quiet paradise in the WV with open views</td>\n      <td>274103383</td>\n      <td>Jennifer</td>\n      <td>Manhattan</td>\n      <td>West Village</td>\n      <td>40.73444</td>\n      <td>-74.00335</td>\n      <td>Private room</td>\n      <td>202</td>\n      <td>2</td>\n      <td>0</td>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>1</td>\n      <td>84.0</td>\n    </tr>\n  </tbody>\n</table>\n<p>48492 rows × 16 columns</p>\n</div>"
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_frame01 = df3.append(df1)\n",
    "data_frame01"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "outputs": [],
   "source": [
    "data_frame01.drop_duplicates(inplace=True)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "outputs": [
    {
     "data": {
      "text/plain": "id                                   0\nname                                16\nhost_id                              1\nhost_name                           22\nneighbourhood_group                  1\nneighbourhood                        1\nlatitude                             1\nlongitude                            1\nroom_type                            1\nprice                                4\nminimum_nights                       1\nnumber_of_reviews                   45\nlast_review                       9945\nreviews_per_month                 9904\ncalculated_host_listings_count       4\navailability_365                   218\ndtype: int64"
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_frame01.isnull().sum()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "outputs": [],
   "source": [
    "data_frame01.dropna(subset=[\"last_review\"],inplace=True)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "F:\\python38\\lib\\site-packages\\pandas\\core\\algorithms.py:968: UserWarning: Unable to sort modes: '<' not supported between instances of 'str' and 'int'\n",
      "  warn(f\"Unable to sort modes: {err}\")\n"
     ]
    }
   ],
   "source": [
    "data_frame01.fillna(data_frame01.mode().iloc[0],inplace=True)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "outputs": [
    {
     "data": {
      "text/plain": "id                                0\nname                              0\nhost_id                           0\nhost_name                         0\nneighbourhood_group               0\nneighbourhood                     0\nlatitude                          0\nlongitude                         0\nroom_type                         0\nprice                             0\nminimum_nights                    0\nnumber_of_reviews                 0\nlast_review                       0\nreviews_per_month                 0\ncalculated_host_listings_count    0\navailability_365                  0\ndtype: int64"
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_frame01.isnull().sum()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Int64Index: 38547 entries, 0 to 48372\n",
      "Data columns (total 16 columns):\n",
      " #   Column                          Non-Null Count  Dtype  \n",
      "---  ------                          --------------  -----  \n",
      " 0   id                              38547 non-null  object \n",
      " 1   name                            38547 non-null  object \n",
      " 2   host_id                         38547 non-null  object \n",
      " 3   host_name                       38547 non-null  object \n",
      " 4   neighbourhood_group             38547 non-null  object \n",
      " 5   neighbourhood                   38547 non-null  object \n",
      " 6   latitude                        38547 non-null  object \n",
      " 7   longitude                       38547 non-null  object \n",
      " 8   room_type                       38547 non-null  object \n",
      " 9   price                           38547 non-null  object \n",
      " 10  minimum_nights                  38547 non-null  object \n",
      " 11  number_of_reviews               38547 non-null  object \n",
      " 12  last_review                     38547 non-null  object \n",
      " 13  reviews_per_month               38547 non-null  object \n",
      " 14  calculated_host_listings_count  38547 non-null  object \n",
      " 15  availability_365                38547 non-null  float64\n",
      "dtypes: float64(1), object(15)\n",
      "memory usage: 5.0+ MB\n"
     ]
    }
   ],
   "source": [
    "data_frame01.info()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "outputs": [
    {
     "data": {
      "text/plain": "       availability_365\ncount      38547.000000\nmean         114.104466\nstd          129.486374\nmin            0.000000\n25%            0.000000\n50%           53.000000\n75%          227.500000\nmax          365.000000",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>count</th>\n      <td>38547.000000</td>\n    </tr>\n    <tr>\n      <th>mean</th>\n      <td>114.104466</td>\n    </tr>\n    <tr>\n      <th>std</th>\n      <td>129.486374</td>\n    </tr>\n    <tr>\n      <th>min</th>\n      <td>0.000000</td>\n    </tr>\n    <tr>\n      <th>25%</th>\n      <td>0.000000</td>\n    </tr>\n    <tr>\n      <th>50%</th>\n      <td>53.000000</td>\n    </tr>\n    <tr>\n      <th>75%</th>\n      <td>227.500000</td>\n    </tr>\n    <tr>\n      <th>max</th>\n      <td>365.000000</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 65,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_frame01.describe()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "outputs": [
    {
     "data": {
      "text/plain": "(38547, 16)"
     },
     "execution_count": 66,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_frame01.shape"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "outputs": [
    {
     "data": {
      "text/plain": "             id                                        name    host_id  \\\n48305  36425863  Lovely Privet Bedroom with Privet Restroom   83554966   \n48313  36427429                    No.2 with queen size bed  257683179   \n48322  36438336                             Seas The Moment  211644523   \n48328  36442252               1B-1B apartment near by Metro  273841667   \n48372  36455809     Cozy Private Room in Bushwick, Brooklyn   74162901   \n\n       host_name neighbourhood_group    neighbourhood  latitude  longitude  \\\n48305      Rusaa           Manhattan  Upper East Side  40.78099  -73.95366   \n48313       H鈥咥i              Queens         Flushing  40.75104  -73.81459   \n48322        Ben       Staten Island      Great Kills  40.54179  -74.14275   \n48328     Blaine               Bronx       Mott Haven  40.80787    -73.924   \n48372  Christine            Brooklyn         Bushwick  40.69805  -73.92801   \n\n             room_type price minimum_nights number_of_reviews last_review  \\\n48305     Private room   129              1                 1    2023/7/7   \n48313     Private room    45              1                 1    2023/7/7   \n48322     Private room   235              1                 1    2023/7/7   \n48328  Entire home/apt   100              1                 2    2023/7/7   \n48372     Private room    30              1                 1    2023/7/8   \n\n      reviews_per_month calculated_host_listings_count  availability_365  \n48305                 1                              1             147.0  \n48313                 1                              6             339.0  \n48322                 1                              1              87.0  \n48328                 2                              1              40.0  \n48372                 1                              1               1.0  ",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>name</th>\n      <th>host_id</th>\n      <th>host_name</th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>room_type</th>\n      <th>price</th>\n      <th>minimum_nights</th>\n      <th>number_of_reviews</th>\n      <th>last_review</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>48305</th>\n      <td>36425863</td>\n      <td>Lovely Privet Bedroom with Privet Restroom</td>\n      <td>83554966</td>\n      <td>Rusaa</td>\n      <td>Manhattan</td>\n      <td>Upper East Side</td>\n      <td>40.78099</td>\n      <td>-73.95366</td>\n      <td>Private room</td>\n      <td>129</td>\n      <td>1</td>\n      <td>1</td>\n      <td>2023/7/7</td>\n      <td>1</td>\n      <td>1</td>\n      <td>147.0</td>\n    </tr>\n    <tr>\n      <th>48313</th>\n      <td>36427429</td>\n      <td>No.2 with queen size bed</td>\n      <td>257683179</td>\n      <td>H鈥咥i</td>\n      <td>Queens</td>\n      <td>Flushing</td>\n      <td>40.75104</td>\n      <td>-73.81459</td>\n      <td>Private room</td>\n      <td>45</td>\n      <td>1</td>\n      <td>1</td>\n      <td>2023/7/7</td>\n      <td>1</td>\n      <td>6</td>\n      <td>339.0</td>\n    </tr>\n    <tr>\n      <th>48322</th>\n      <td>36438336</td>\n      <td>Seas The Moment</td>\n      <td>211644523</td>\n      <td>Ben</td>\n      <td>Staten Island</td>\n      <td>Great Kills</td>\n      <td>40.54179</td>\n      <td>-74.14275</td>\n      <td>Private room</td>\n      <td>235</td>\n      <td>1</td>\n      <td>1</td>\n      <td>2023/7/7</td>\n      <td>1</td>\n      <td>1</td>\n      <td>87.0</td>\n    </tr>\n    <tr>\n      <th>48328</th>\n      <td>36442252</td>\n      <td>1B-1B apartment near by Metro</td>\n      <td>273841667</td>\n      <td>Blaine</td>\n      <td>Bronx</td>\n      <td>Mott Haven</td>\n      <td>40.80787</td>\n      <td>-73.924</td>\n      <td>Entire home/apt</td>\n      <td>100</td>\n      <td>1</td>\n      <td>2</td>\n      <td>2023/7/7</td>\n      <td>2</td>\n      <td>1</td>\n      <td>40.0</td>\n    </tr>\n    <tr>\n      <th>48372</th>\n      <td>36455809</td>\n      <td>Cozy Private Room in Bushwick, Brooklyn</td>\n      <td>74162901</td>\n      <td>Christine</td>\n      <td>Brooklyn</td>\n      <td>Bushwick</td>\n      <td>40.69805</td>\n      <td>-73.92801</td>\n      <td>Private room</td>\n      <td>30</td>\n      <td>1</td>\n      <td>1</td>\n      <td>2023/7/8</td>\n      <td>1</td>\n      <td>1</td>\n      <td>1.0</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 67,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_frame01.tail()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "outputs": [
    {
     "data": {
      "text/plain": "<matplotlib.collections.PathCollection at 0x1c4a25ad5e0>"
     },
     "execution_count": 85,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data_frame01[\"price\"].replace({\"Entire home/apt\":129,\"Private room\":129},inplace=True)\n",
    "data_frame01[\"price\"] = data_frame01[\"price\"].astype(\"float64\")\n",
    "plt.scatter(data_frame01[\"price\"],data_frame01[\"availability_365\"])\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "outputs": [
    {
     "data": {
      "text/plain": "         id                                              name  host_id  \\\n0      2539                Clean & quiet apt home by the park     2787   \n1      2595                             Skylit Midtown Castle     2845   \n3      3831                   Cozy Entire Floor of Brownstone     4869   \n4      5022  Entire Apt: Spacious Studio/Loft by central park     7192   \n5      5099         Large Cozy 1 BR Apartment In Midtown East     7322   \n..      ...                                               ...      ...   \n431  208889                     Welcome to Brooklyn! Bed-Stuy  1029021   \n432  209310  Sunnyside NYC/ AC room/ city views/ near Midtown  1031148   \n433  211078                        Greenpoint Waterfront Loft   306739   \n434  211974                     East Village House -- Unique!   272730   \n435  212109    2-bedroom share in heart of Greenwich Village!   666271   \n\n       host_name neighbourhood_group       neighbourhood  latitude  longitude  \\\n0           John            Brooklyn          Kensington  40.64749  -73.97237   \n1       Jennifer           Manhattan             Midtown  40.75362  -73.98377   \n3    LisaRoxanne            Brooklyn        Clinton Hill  40.68514  -73.95976   \n4          Laura           Manhattan         East Harlem  40.79851  -73.94399   \n5          Chris           Manhattan         Murray Hill  40.74767    -73.975   \n..           ...                 ...                 ...       ...        ...   \n431     Jameelah            Brooklyn  Bedford-Stuyvesant  40.69025  -73.93323   \n432        Iulia              Queens           Sunnyside  40.73826  -73.92458   \n433         Maya            Brooklyn          Greenpoint  40.73049  -73.96115   \n434        Goldi           Manhattan        East Village  40.72956  -73.97903   \n435        Susan           Manhattan        West Village  40.73854  -74.00821   \n\n           room_type  price minimum_nights number_of_reviews  \\\n0       Private room  149.0              1                 9   \n1    Entire home/apt  225.0              1                45   \n3    Entire home/apt   89.0              1               270   \n4    Entire home/apt   80.0             10                 9   \n5    Entire home/apt  200.0              3                74   \n..               ...    ...            ...               ...   \n431  Entire home/apt  145.0              3                30   \n432     Private room   50.0             28               258   \n433  Entire home/apt  185.0              3               228   \n434  Entire home/apt  250.0              1                60   \n435     Private room   80.0             90                 9   \n\n             last_review reviews_per_month calculated_host_listings_count  \\\n0    2022-10-19 00:00:00              0.21                              6   \n1    2023-05-21 00:00:00              0.38                              2   \n3    2023-07-05 00:00:00              4.64                              1   \n4    2022-11-19 00:00:00               0.1                              1   \n5    2023-06-22 00:00:00              0.59                              1   \n..                   ...               ...                            ...   \n431            2023/6/24              0.32                              3   \n432            2023/5/28               2.9                              1   \n433            2022/4/25              2.39                              3   \n434             2023/7/1              0.65                              1   \n435            2023/6/30               0.2                              1   \n\n     availability_365  \n0               365.0  \n1               355.0  \n3               194.0  \n4                 0.0  \n5               129.0  \n..                ...  \n431              11.0  \n432             287.0  \n433               1.0  \n434               0.0  \n435             338.0  \n\n[500 rows x 16 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>name</th>\n      <th>host_id</th>\n      <th>host_name</th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>room_type</th>\n      <th>price</th>\n      <th>minimum_nights</th>\n      <th>number_of_reviews</th>\n      <th>last_review</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>2539</td>\n      <td>Clean &amp; quiet apt home by the park</td>\n      <td>2787</td>\n      <td>John</td>\n      <td>Brooklyn</td>\n      <td>Kensington</td>\n      <td>40.64749</td>\n      <td>-73.97237</td>\n      <td>Private room</td>\n      <td>149.0</td>\n      <td>1</td>\n      <td>9</td>\n      <td>2022-10-19 00:00:00</td>\n      <td>0.21</td>\n      <td>6</td>\n      <td>365.0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>2595</td>\n      <td>Skylit Midtown Castle</td>\n      <td>2845</td>\n      <td>Jennifer</td>\n      <td>Manhattan</td>\n      <td>Midtown</td>\n      <td>40.75362</td>\n      <td>-73.98377</td>\n      <td>Entire home/apt</td>\n      <td>225.0</td>\n      <td>1</td>\n      <td>45</td>\n      <td>2023-05-21 00:00:00</td>\n      <td>0.38</td>\n      <td>2</td>\n      <td>355.0</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>3831</td>\n      <td>Cozy Entire Floor of Brownstone</td>\n      <td>4869</td>\n      <td>LisaRoxanne</td>\n      <td>Brooklyn</td>\n      <td>Clinton Hill</td>\n      <td>40.68514</td>\n      <td>-73.95976</td>\n      <td>Entire home/apt</td>\n      <td>89.0</td>\n      <td>1</td>\n      <td>270</td>\n      <td>2023-07-05 00:00:00</td>\n      <td>4.64</td>\n      <td>1</td>\n      <td>194.0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>5022</td>\n      <td>Entire Apt: Spacious Studio/Loft by central park</td>\n      <td>7192</td>\n      <td>Laura</td>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.79851</td>\n      <td>-73.94399</td>\n      <td>Entire home/apt</td>\n      <td>80.0</td>\n      <td>10</td>\n      <td>9</td>\n      <td>2022-11-19 00:00:00</td>\n      <td>0.1</td>\n      <td>1</td>\n      <td>0.0</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>5099</td>\n      <td>Large Cozy 1 BR Apartment In Midtown East</td>\n      <td>7322</td>\n      <td>Chris</td>\n      <td>Manhattan</td>\n      <td>Murray Hill</td>\n      <td>40.74767</td>\n      <td>-73.975</td>\n      <td>Entire home/apt</td>\n      <td>200.0</td>\n      <td>3</td>\n      <td>74</td>\n      <td>2023-06-22 00:00:00</td>\n      <td>0.59</td>\n      <td>1</td>\n      <td>129.0</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>431</th>\n      <td>208889</td>\n      <td>Welcome to Brooklyn! Bed-Stuy</td>\n      <td>1029021</td>\n      <td>Jameelah</td>\n      <td>Brooklyn</td>\n      <td>Bedford-Stuyvesant</td>\n      <td>40.69025</td>\n      <td>-73.93323</td>\n      <td>Entire home/apt</td>\n      <td>145.0</td>\n      <td>3</td>\n      <td>30</td>\n      <td>2023/6/24</td>\n      <td>0.32</td>\n      <td>3</td>\n      <td>11.0</td>\n    </tr>\n    <tr>\n      <th>432</th>\n      <td>209310</td>\n      <td>Sunnyside NYC/ AC room/ city views/ near Midtown</td>\n      <td>1031148</td>\n      <td>Iulia</td>\n      <td>Queens</td>\n      <td>Sunnyside</td>\n      <td>40.73826</td>\n      <td>-73.92458</td>\n      <td>Private room</td>\n      <td>50.0</td>\n      <td>28</td>\n      <td>258</td>\n      <td>2023/5/28</td>\n      <td>2.9</td>\n      <td>1</td>\n      <td>287.0</td>\n    </tr>\n    <tr>\n      <th>433</th>\n      <td>211078</td>\n      <td>Greenpoint Waterfront Loft</td>\n      <td>306739</td>\n      <td>Maya</td>\n      <td>Brooklyn</td>\n      <td>Greenpoint</td>\n      <td>40.73049</td>\n      <td>-73.96115</td>\n      <td>Entire home/apt</td>\n      <td>185.0</td>\n      <td>3</td>\n      <td>228</td>\n      <td>2022/4/25</td>\n      <td>2.39</td>\n      <td>3</td>\n      <td>1.0</td>\n    </tr>\n    <tr>\n      <th>434</th>\n      <td>211974</td>\n      <td>East Village House -- Unique!</td>\n      <td>272730</td>\n      <td>Goldi</td>\n      <td>Manhattan</td>\n      <td>East Village</td>\n      <td>40.72956</td>\n      <td>-73.97903</td>\n      <td>Entire home/apt</td>\n      <td>250.0</td>\n      <td>1</td>\n      <td>60</td>\n      <td>2023/7/1</td>\n      <td>0.65</td>\n      <td>1</td>\n      <td>0.0</td>\n    </tr>\n    <tr>\n      <th>435</th>\n      <td>212109</td>\n      <td>2-bedroom share in heart of Greenwich Village!</td>\n      <td>666271</td>\n      <td>Susan</td>\n      <td>Manhattan</td>\n      <td>West Village</td>\n      <td>40.73854</td>\n      <td>-74.00821</td>\n      <td>Private room</td>\n      <td>80.0</td>\n      <td>90</td>\n      <td>9</td>\n      <td>2023/6/30</td>\n      <td>0.2</td>\n      <td>1</td>\n      <td>338.0</td>\n    </tr>\n  </tbody>\n</table>\n<p>500 rows × 16 columns</p>\n</div>"
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_frame01 = data_frame01[:500]\n",
    "data_frame01"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "outputs": [
    {
     "data": {
      "text/plain": "([<matplotlib.patches.Wedge at 0x1c4a30582b0>,\n  <matplotlib.patches.Wedge at 0x1c4a3058670>,\n  <matplotlib.patches.Wedge at 0x1c4a3058a90>,\n  <matplotlib.patches.Wedge at 0x1c4a305f670>,\n  <matplotlib.patches.Wedge at 0x1c4a305fac0>],\n [Text(1.0999782869396884, 0.006911458690387184, '395'),\n  Text(1.0998045876003273, 0.02073328467161049, '99'),\n  Text(-0.3267457394151303, 1.0503509993207318, 'Entire home/apt'),\n  Text(0.2935922196909135, -1.0600960374121595, 'Private room'),\n  Text(1.0998045888893968, -0.02073321629234046, 'Shared room')])"
     },
     "execution_count": 91,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "res1 = data_frame01.groupby(\"room_type\")[\"id\"].count()\n",
    "plt.pie(res1.values,labels=res1.index)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "outputs": [],
   "source": [
    "res2 = data_frame01.groupby(\"room_type\")[\"price\"].mean()\n",
    "res3 = data_frame01.groupby(\"neighbourhood_group\")[\"price\"].mean()\n",
    "res4 = data_frame01.groupby(\"neighbourhood\")[\"price\"].mean()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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dfn9frndbnm93pD3+3w+HT58OOy8FyxYoOrqamvYvXv36VQRAAC0Ae7TeZPD4VBubq5Wr16t7t2768CBA0pISLDGt2/fXjU1Nfr888+VlJSk8vLykPcfPHhQHo8n7Ly9Xm+94AMAABBOs1pkNm3aZH1LSZI8Ho8cDocWLVqktWvXWuUlJSVyOp1KT09XXl6eSkpKrHGVlZUKBAJKSkpqgeoDAIC2rFktMj179tSyZcuUlZWl7373u7rvvvt01VVXKTc3V/fdd59SU1N14sQJzZo1SzfffLOioqI0fPhw+f1+rVy5UtOnT1dRUZFGjRoll8vVWusEAADaiGYFmQ4dOujll1/WXXfdpbvvvlujR4/Wc889p3bt2mn79u2aPHmyXC6XbrrpJhUVFZ1cgNut5cuXq6CgQIWFhXI6ndq4cWNrrAsAAGhjHOYsPWb3iy++0JYtW5Sfn6/k5OQmv8/v9ys+Pl7V1dWKi4trxRoCOFuyV2fXKyubWnYOagKgtZytz+/T6ux7OtLS0jRu3LiztTgAANAG8OvXAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAtggyAADAttznugJAUPbq7HplZVPLzkFNAAB2QYsMAACwLYIMAACwLYIMAACwLYIMAACwLYIMAACwrdMKMgcOHNB7772nqqqqlq4PAABAkzU7yLz00kvKyMjQjBkz1LlzZ7300kuSpPLycuXl5SkxMVGFhYUyxljv2bRpk/r06aOUlBQtXry45WoPAADatGYFmerqat1+++166623VFZWpqVLl6qwsFCBQEATJkxQbm6uNm/erIqKCq1atUqStG/fPk2cOFEFBQUqKSnRmjVrtGHDhtZYFwAA0MY0K8j4/X49/vjjysnJkSQNHDhQX331ldatW6fq6motXrxY3bt3V1FRkVasWCFJWrNmjTp27Kj7779fWVlZeuCBB6xxAAAAZ6JZQSY9PV1TpkyRJB07dkxLlizR1VdfrdLSUuXn5ysqKkqSlJOTo4qKCklSaWmpRo4cKYfDIUkaNGiQtmzZ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MmveTqfT2nZut9v07dvXLFmyxJSVlZn9+/ebSZMmmaioKJOXl2dKS0vN73//e+Pz+YzL5bLmkZycbCSZ2NhYM2HCBFNYWGj69etnJJnU1FRTWlpqRo8ebaKiokx8fLxZuHChGT16tImPjzfz588Pu88GDhwYtvznP/952PLo6OiQdQzuN6fTadq1a1dveqfTadLS0szUqVONx+MxTzzxRNj5SjLTp083Xbt2rffehqavPURERJgNGzaY6OjokGOp7jBgwADz4osvWsdQ7f1ojDHz5s0zTqfT3HbbbVYdnE6nyczMNJ9++qnJz8+39mVw/LXXXmuMMUaS2bp1a73jYNKkScbhcJisrCwTExNjUlJSzIwZM0xqaqrp2rWrWblypenfv79ZuXKlSU9PN+np6cbpdJqpU6da85Rk7rrrLiPJXH755Wbq1Klm5cqVJi4uzkRHR5v+/fubn//859b/27dvbx5//HHrmJFk+vTpE7ItOnToYCZPnhxS5vP5zIwZM6z3d+3a1UydOtVs2LDBdO3a1SxcuNBMnTrVzJ8/33i93pD1DJ4LkyZNMjExMUaS9Z5w+2Lu3Lkh14P+/fsbj8dzymM0KirKSDJer9dcfvnl5s477ww5T3w+n5Fk/vjHP1rXvaSkJOsa8Nlnn5kNGzYYj8djoqKi6h3Tv/71r016erq1nKSkJJOUlGQ6depkRowYYdLS0kxcXFyDx9j8+fNNRESESU9PNxEREcblclnHTFJSUsh04d4fExNjxo0bZxYuXGi6du1qcnNzrfW98847T3kuuFwuk5KSYuLj482MGTPM//zP/5j09HQjyVxyySXmwIEDJhAImB/+8IfG4/EYj8dj+vfvb+3jU51nwWvlsmXLTPv27Y108qPyZz/7Wb3pU1NTjSTz2muvGUmmY8eOxhhjxo4da66++mozePBga9qgLl26mD59+oRsq0mTJhlJZvjw4VbZkSNHzO23326GDRtW7/q7cOFCc/HFFxu3222cTqe59957TU1NjbXfg+sQbh0nT55sFi5caIwxpn///qZ///71zumpU6eaqVOnhlxHap8DQcFtei6dlRaZjRs3yuFwhAwxMTHNmkdcXJyqqqq0a9cuzZo1S5MnT9bevXu1ceNGZWRkSJIOHz6sSZMm6Y477lBFRYViY2N16623auHChVqwYIHy8vK0dOlSFRYW6o033tDs2bO1ZMkS3XXXXZKk3r176/3339eVV14pn8+n//qv/1JMTIzuuOMOJSUlqUOHDrr44os1btw4FRcXq0OHDmrXrp1Gjx4tSfrkk080a9Ysbd++3aq3w+HQCy+8YL3u16+fqqqq9Nlnn2ncuHG69tprrXFbtmyRy+VSZWWlPv30U73wwgt6++23FRsbqzlz5uiLL76Qy+WS2+3W8ePH5XK51KNHD/Xp00d9+/ZVYmKijhw5Ikn6j//4j5DtFxkZKUkyxuif//ynJOm1115Tv3799P7770uSXnnlFWv/SNKhQ4f0xBNPaNOmTZo+fbo2bdokh8OhX//619b23rZtm7V/jDHyeDxyuVw6fvy4KioqNGfOHF188cXq1q2bXnnlFZWWlmry5MmaNGmSrr32Wvl8Pg0fPlwjR46UJFVVVSkmJkYpKSnauHGjfv/73ysmJkY+n089evTQNddco5SUFI0aNareMXLFFVcoNjZWjz76qLxerzwej4YMGaJjx44pOjpal112maqqqvT5559rz549GjBggNzuk1/cc7vdWrFihT755BPt2bMn7DH47rvvavbs2XI4HLryyiuVmJiofv366aKLLtKXX36p1157rd57PB6PMjIyNGTIEEnSkCFDNHjwYHm9Xs2fP1/XXXddyLoE91NsbKz1kCqXy6XevXvL4XDoiy++0DfffGNNm5KSosmTJys2Nla9evVSWlqasrKydP3110uSMjIytHHjRt199906cOCAJCkmJkbdu3fXu+++q7Fjx2rNmjWSpC+//FKDBg3S3//+d2u5TqdTkZGRevnll8Nuk6CLLrpIkjR48GC9//772r9/vzZt2hR22sTERF177bVyuVx6+umnQ8bdcMMNuvbaa8M+Z+rbb7/Vfffdp+HDh6u8vFzPPfdcyMO26j7SITk5Wd9++621rYLTzpw5U8uXL9eSJUt02223qaamRjfccIOGDh2qTz/9VAUFBXr66aeVmJioQCDQ4LcsHQ6H2rVrF1LmdDp12WWXWa+XLl2qV155xXqdnZ2t+Ph4de7cWZ988onKyso0evRoxcfHKy4uTvPnz1dGRob1e3MbNmxQUlKSXnzxRZ04cfI3ckpLS7V+/XpJ0i233KLq6mpNmjRJHTt2lNvtlsvl0qxZs8LWWZLee+89zZw5U48//rjGjx8vSSosLNS0adO0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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.bar(res2.index,res2.values)\n",
    "plt.bar(res3.index,res3.values)\n",
    "plt.bar(res4.index,res4.values)\n",
    "plt.show()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnUAAAGdCAYAAAB0CIUmAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABApklEQVR4nO3de3QU933//9detCut7rsChC6gC+ISihAmckRisImxoQZEfdzYBrtO+MXHpU3qnvZXnULii9rTijTna5zkFPfUlxrXxz7Nz3YaOyYkEG62KXUiwk1IxlwESBZgAdLugmB12fn94ex8JZBsIyPNavR8nDMHNDM7857Z2d3Xzs58Pg7DMAwBAABgRHNaXQAAAAC+OEIdAACADRDqAAAAbIBQBwAAYAOEOgAAABsg1AEAANgAoQ4AAMAGCHUAAAA24La6gOEUjUbV0tKi1NRUORwOq8sBAACfg2EYCofDysnJkdPJ+aiBjKpQ19LSovz8fKvLAAAAg9DU1KS8vDyry4hboyrUpaamSvrkoEhLS7O4GgAA8HmEQiHl5+ebn+Po36gKdbGfXNPS0gh1AACMMFw69en4YRoAAMAGCHUAAAA2QKgDAACwAUIdAACADRDqAAAAbIBQBwAAYAOEOgAAABsg1AEAANgAoQ4AAMAGCHUAAAA2QKgDAACwAUIdAACADRDqAAAAbIBQBwAAYAOEOgAAABsg1N0gBas3Wl3CiPPUfUvUvPpdq8uIC9nb992QeTD0tm4rtrqEgVWnW12BpWa8NONzz7t+1TY9dd+SIazm+usZLv2ti88weyDUAQBGPb40wQ4IdQCG3ig/gwQAw4FQBwCfA5cKAIh3hDoMu4ap06wuAQAA2yHU4Ya5nouCAYwC/OwODCtCHQAANwg3XMBKhDoAAAAbINQBAADYgOWhrr29Xe+//77a2tqsLmXUuxGNX46UmyD4iaR/1dXVVpcAABgkS0Pda6+9poKCAj388MPKy8vTa6+9Jkl69NFH5XA4zGHSpEnmY+rq6lReXq7MzExVVVXJMAyrygcAAIgbloW6YDCov/zLv9Q777yjgwcPav369aqqqpIk1dbWauPGjWpra1NbW5v27t0rSYpEIlq6dKlmz56t2tpa1dfXa8OGDVZtAgAAtscZ/JHDslAXCoX0ox/9SKWlpZKkm266SefPn1d3d7cOHTqkefPmKSMjQxkZGUpNTZUkbdq0ScFgUOvWrVNxcbFqamr0wgsvWLUJAAAAccOyUJefn68HHnhAktTV1aWnn35ad999tw4ePKhoNKqysjIlJSVp0aJFOnXqlCRp//79qqiokM/nkySVlpaqvr5+wHVEIhGFQqE+AwAAgB1ZfqPE/v37lZ2drV/96lf6yU9+ovr6ek2ZMkUvv/yyDhw4ILfbrUceeUTSJ2f3CgsLzcc6HA65XK4Bb7JYu3at0tPTzSE/P39YtgkAAGC4WR7qSktLtXnzZpWUlOjhhx/WAw88oNraWs2ZM0clJSV65plntGXLFoVCIbndbnm93j6PT0xMVEdHR7/LXrNmjYLBoDk0NTUNxyYBAAAMO7fVBTgcDs2ePVsvvfSSiouL1d7eroyMDHP62LFjFY1Gdfr0afn9ftXV1fV5fDgclsfj6XfZXq/3mhAIAABgR5adqdu5c6d5t6skeTweORwO/cM//INeffVVc/zu3bvldDqVn5+v8vJy7d6925zW2NioSCQiv98/rLV/UfSRCgCwg6fuW2J1CejFslA3efJkPfvss3r22WfV1NSk733ve7rzzjs1e/ZsPfbYY9q6das2b96sVatW6aGHHpLP59O8efMUCoX04osvSpJqamq0YMECuVwuqzYDAADLFKzeaHUJkmj2JF5YFurGjx+v119/XT/+8Y81ffp0dXR06D//8z/14IMP6r777tM999yj5cuXa9GiRfrXf/1XSZLb7dbzzz+v7373u8rKytKbb76pf/mXf7FqEwY0UnpVADB06LUEwHCz9Jq6O+64Q4cOHbpm/Nq1a7V27dp+H1NZWaljx45pz549qqioUCAQGOoyAQAA4p7ld78ORnZ2thYvXkygA+JQ8+p3rS4BsIV4+WkVI8eIDHWAlQgtAIB4RKgDAACwAULdEOJWbwAAMFwIdbC99au2WV0CAABDjlAHALAENwIANxahDjccZ8ZGltHwfNEwKoDRgFAHAABgA4Q6AAAAGyDU4bpxVy8AxJcZL82wugTEAUIdAACADRDqAPTri96ZuHVb8Q2qZGhwZgOA3RDqAAAAbIBQBwA3EM2nALAKoQ6jXsPUaVaXAADAF0aoAwAAsAFCHQCMENzcAeDTEOoAAABsgFAHSfF3XVm81XM9aJwZAGAFQh0AAIANEOrw2arTra4AAAB8BkJdnOKCaMQFAj0AjBiEOjuLww9kwioAAEODUAcAAGADhDoAAEah5tXvDjht/aptw1gJbhRCHYBBK1i90eoSAAB/QKjDiMa3SQAAPkGoAwAAsAFC3RDhDBIAABhOhDoAAAAbINQhLmzdVmx1CQCuE+1OAvGFUBfnRurPuHRqf2MNNvSO1OMHAHD9CHVAnCIYAwCuB6EOAADABgh1gA1UV1dbXQKAUYbLO+IPoQ4AAMAGLA917e3tev/999XW1mZ1KQAAACOWpaHutddeU0FBgR5++GHl5eXptddekyTV1dWpvLxcmZmZqqqqkmEY5mN27typadOmKSsrS+vWrbOq9EHpr59MLoYHYCc0TwRYx7JQFwwG9Zd/+Zd65513dPDgQa1fv15VVVWKRCJaunSpZs+erdraWtXX12vDhg2SpNbWVlVWVmr58uXavXu3XnnlFW3fvt2qTQAADLH+vgwD6J9loS4UCulHP/qRSktLJUk33XSTzp8/r02bNikYDGrdunUqLi5WTU2NXnjhBUnSK6+8opycHD3++OMqKSnRE088YU7D0GuYOs3qEgAAwAAsC3X5+fl64IEHJEldXV16+umndffdd2v//v2qqKiQz+eTJJWWlqq+vl6StH//fs2fP18Oh0OSdPPNN2vPnj0DriMSiSgUCvUZ7IqfcYced3oBsAI9d+DzsvxGif379ys7O1u/+tWv9JOf/EShUEiFhYXmdIfDIZfLpba2tmumpaWlqaWlZcBlr127Vunp6eaQn58/pNsCAABgFctDXWlpqTZv3qySkhI9/PDDcrvd8nq9feZJTExUR0fHNdNi4weyZs0aBYNBc2hqahqy7QAAq2Rv32d1CQDigOWhzuFwaPbs2XrppZf0s5/9TH6/X62trX3mCYfD8ng810yLjR+I1+tVWlpanwEA7IJGpwH0Zlmo27lzp6qqqsy/PR6PHA6Hpk2bpt27d5vjGxsbFYlE5Pf7VV5e3mfa3r17lZubO6x1Y2TjQxB2QxMiAGIsC3WTJ0/Ws88+q2effVZNTU363ve+pzvvvFN33XWXQqGQXnzxRUlSTU2NFixYIJfLpcrKSu3atUu/+c1v1NXVpR/+8IdauHChVZsAAMCow40b8cuyUDd+/Hi9/vrr+vGPf6zp06ero6ND//mf/ym3263nn39e3/3ud5WVlaU333xT//Iv/yJJysrK0tNPP6277rpL48aN0+HDh/XYY49ZtQkAAABxw23lyu+44w4dOnTomvGVlZU6duyY9uzZo4qKCgUCAXPaqlWrtHDhQn3wwQeaO3euUlJShrNk23vqviX6f3/6ttVlAACA62RpqPs02dnZWrx4cb/TCgsL+zRtAgAAMNpZfvcr+qJLHAAAMBiEOgAAABsg1AEAANgAoQ4AAMAGCHXAINCIsUWq062uAADiFqEO+IOn7ltidQnAsGmYOs3qEgDcYIQ6II41r373uh/DHdQAMDoR6gAAAGyAUAcAAGADhDoAAEaBGS/NsLoEDDFCHWwne/s+q0sAAGDYEeqAEWr9qm3Duj7uDgaA+EaoAwBo67Ziq0u4ofgSgtGIUAeMIDRXAgAYCKEOgL3EYa8TXKAOYDgQ6gDgCxjKwGa3n0QBDC1CHaDhv+nACvRXCwD2RqgDABsYzPWWo+HLDDCaEOpwXeL5Q4AzUQCA0YxQB1wHmkkYXbjBAcBIQqgDAMBG+PI5ehHqAAAAbIBQZ6F4vj7NbvjmCgCwO0IdAAA3Whw2gg37I9QBAADYAKEOAADABgh1FmmYOs3qEgAMYDAN+QKA1Qh1AADEK67Nw3Ug1I1UvNCHFWdWAQDxjlAHYEShlwcA6B+hDgCAL4B2MBEvCHUAgBGByyCAT0eoAwDAIlxOgBuJUAd8Adnb9/U7vnn1u8NbCIAbKt7OCsZbPYhPhLpRqLq62uoSAADADUaoAwAAsAFLQ92bb76poqIiud1ulZWVqaGhQZL06KOPyuFwmMOkSZPMx9TV1am8vFyZmZmqqqqSYRhWlQ/YBnfvAcDIZ1moO3bsmFauXKkf/OAH+uijjzR58mQ9/PDDkqTa2lpt3LhRbW1tamtr0969eyVJkUhES5cu1ezZs1VbW6v6+npt2LDBqk0AMEwGunYRAPB/WRbqGhoa9IMf/ED33nuvxo0bp7/4i7/Q3r171d3drUOHDmnevHnKyMhQRkaGUlNTJUmbNm1SMBjUunXrVFxcrJqaGr3wwgtWbQIAAHGDmylgWahbsmSJHnnkEfPvw4cPq6SkRAcPHlQ0GlVZWZmSkpK0aNEinTp1SpK0f/9+VVRUyOfzSZJKS0tVX18/4DoikYhCoVCfwXJ07zVicHYIoxbvU8CIFBc3SnR2duqpp57SqlWrVF9frylTpujll1/WgQMH5Ha7zfAXCoVUWFhoPs7hcMjlcqmtra3f5a5du1bp6enmkJ+fPyzbA8QbmlgBAPuLi1D35JNPKjk5WQ8//LAeeOAB1dbWas6cOSopKdEzzzyjLVu2KBQKye12y+v19nlsYmKiOjo6+l3umjVrFAwGzaGpqWk4NgfA50DTOrCrgtUbrS4Bo5TloW7btm1av369Xn31VSUkJFwzfezYsYpGozp9+rT8fr9aW1v7TA+Hw/J4PP0u2+v1Ki0trc8AWG39qm1WlwAAsCFLQ11jY6OWL1+u9evX60tf+pIkqaqqSq+++qo5z+7du+V0OpWfn6/y8nLt3r27z+MjkYj8fv+w1w4AwHAaii+En3bGnKaORh7LQt3ly5e1ZMkSLVu2THfffbcuXryoixcvqrS0VI899pi2bt2qzZs3a9WqVXrooYfk8/k0b948hUIhvfjii5KkmpoaLViwQC6Xy6rNQJzjbjAgPgwmkHCzEnB93FatePPmzaqvr1d9fb2ee+45c3xjY6Puu+8+3XPPPXK5XHrwwQdVU1PzSbFut55//nktX75cVVVVcjqd2rFjh0VbAGC0yt6+T2fml1ldBgD0YVmoW7Zs2YC9Qaxdu1Zr167td1plZaWOHTumPXv2qKKiQoFAYCjLBAAAGBEsC3VfRHZ2thYvXmx1GQAAAHHD8rtfAQAA8MUR6gAAAGyAUAcAAGADhDoAAAAbINQBAADYAKEOAADABgh1AGAzI6EnldHeW0TB6o1WlwAbItQBAK4x46UZVpcA4DoR6kYROmcGgM9QnW51BZ+K93F8GkJdHGhe/a7VJQCwCD/DAbhRCHUAAOC6jITrNkcjQh0+F66vAUYHzhzaA78AjU6EOmCE480bACAR6gAAAGyBUAcAAGADhDoAAAAbINQBAGxl/aptVpcAWIJQBwAAYAOEulHADu0JVVdXW10CAJho5gnxiFAHwNZo8gW4geK8G7XRjlAH2Ej29n1WlwAAsAihDgAAwAYIdQAA2Bhdv40ehDrgBrHDDSkAgJGLUAcAAGADhDrEPe5eBADgsxHqMOj2lmg7DqMNxzyAeEaoAzAqbN1WbHUJADCkCHUAAAA2QKgDAACwAUIdAACADRDqAAAAbIBQB2BYPXXfEqtLGBG40xbDrjrd6grwBRHqgGFANz0AgKFGqAMAALABQh0AAIANWBrq3nzzTRUVFcntdqusrEwNDQ2SpLq6OpWXlyszM1NVVVUyDMN8zM6dOzVt2jRlZWVp3bp1VpUOAAAQVywLdceOHdPKlSv1gx/8QB999JEmT56shx9+WJFIREuXLtXs2bNVW1ur+vp6bdiwQZLU2tqqyspKLV++XLt379Yrr7yi7du3W7UJwKhDP7wAEL8sC3UNDQ36wQ9+oHvvvVfjxo3TX/zFX2jv3r3atGmTgsGg1q1bp+LiYtXU1OiFF16QJL3yyivKycnR448/rpKSEj3xxBPmNADW485WALCO26oVL1nS983/8OHDKikp0f79+1VRUSGfzydJKi0tVX19vSRp//79mj9/vhwOhyTp5ptv1urVq4e3cAAAgDgUFzdKdHZ26qmnntKqVasUCoVUWFhoTnM4HHK5XGpra7tmWlpamlpaWgZcbiQSUSgU6jMAAPqiTbzBW79q27Cvk8sgMJC4CHVPPvmkkpOT9fDDD8vtdsvr9faZnpiYqI6OjmumxcYPZO3atUpPTzeH/Pz8IdsGAPiiGqZOs7oEW8revs/qEoBhYXmo27Ztm9avX69XX31VCQkJ8vv9am1t7TNPOByWx+O5Zlps/EDWrFmjYDBoDk1NTUO2HQCAUYKeFxCnLA11jY2NWr58udavX68vfelLkqTy8nLt3r27zzyRSER+v/+aaXv37lVubu6Ay/d6vUpLS+szAAAA2JFloe7y5ctasmSJli1bprvvvlsXL17UxYsXNXfuXIVCIb344ouSpJqaGi1YsEAul0uVlZXatWuXfvOb36irq0s//OEPtXDhQqs2AQAAIG5Ydvfr5s2bVV9fr/r6ej333HPm+MbGRj3//PNavny5qqqq5HQ6tWPHDklSVlaWnn76ad11111KSUlRRkaG2YYdAADAaGZZqFu2bFmfniJ6Kygo0LFjx7Rnzx5VVFQoEAiY01atWqWFCxfqgw8+0Ny5c5WSkjJcJQ+p6upq7kCDpZpXvyslWl0FAGCwLAt1nyU7O1uLFy/ud1phYWGfpk2A67F1W7HkeMPqMgDcSNXpUuEEq6sALGX53a/oB3dWfaYZL82wugQAiA98ZuAPCHW4Bg1bAgAw8hDqAAAAbIBQB8Shoe56qGD1xiFdvtX4eX70GupeOeL9tWNFt2WIH4S6EWzGSzNs3a0Qb07obSg/TEfbJQeEXnxeo+21MdIR6gAAAGyAUAcAAGADhDoAAAAbINQBAADYAKEOAADABgh1GDG2biu2ugQAAOIWoQ4AYDk7N88EDBdCHQAAgA0Q6mAr/EQLABitCHUAAAA2QKgDAACwAUIdAACADRDqAAAAbIBQBwAYHarTra4AGFKEOgAAABsg1AEAANgAoQ4AAMAGCHWAxWgwGQBwIxDqAAAAbIBQh7j21H1LrC4BAIARgVAHAABgA4Q6AAAAGyDUAUOImyAQd2iA97pwCQhGEkIdECcKVm+0ugQAwAhGqAMAALABQh0wymRv32d1CQCAIUCoAwAAsAFCHQAAgA0Q6oAbaP2qbVaXAAAYpQh1AAAANkCoAwAAsAFCHQAAgA1YGurOnTunwsJCnThxwhz36KOPyuFwmMOkSZPMaXV1dSovL1dmZqaqqqpkGIYFVce36upqq0sAAAAWsCzUnTt3TkuWLOkT6CSptrZWGzduVFtbm9ra2rR3715JUiQS0dKlSzV79mzV1taqvr5eGzZsGP7CAQAA4pBloe7+++/XihUr+ozr7u7WoUOHNG/ePGVkZCgjI0OpqamSpE2bNikYDGrdunUqLi5WTU2NXnjhBStKBzDEBtPfJo0qAxjtLAt1zz33nB599NE+4w4ePKhoNKqysjIlJSVp0aJFOnXqlCRp//79qqiokM/nkySVlpaqvr7+U9cRiUQUCoX6DAAAAHZkWagrLCy8Zlx9fb2mTJmil19+WQcOHJDb7dYjjzwiSQqFQn0e43A45HK51NbWNuA61q5dq/T0dHPIz8+/8RsCAAAQB+Lq7tcHHnhAtbW1mjNnjkpKSvTMM89oy5YtCoVCcrvd8nq9feZPTExUR0fHgMtbs2aNgsGgOTQ1NQ31JgAAAFjCbXUBn2bs2LGKRqM6ffq0/H6/6urq+kwPh8PyeDwDPt7r9V4TBAEAAOwors7UVVVV6dVXXzX/3r17t5xOp/Lz81VeXq7du3eb0xobGxWJROT3+60oFQAAIK7E1Zm6mTNn6rHHHtO4cePU09Ojv/qrv9JDDz0kn8+nefPmKRQK6cUXX9TKlStVU1OjBQsWyOVyWV02AACA5eIq1D344IM6dOiQ7rnnHrlcLj344IOqqamRJLndbj3//PNavny5qqqq5HQ6tWPHDmsLBgAAiBOWh7qre4VYu3at1q5d2++8lZWVOnbsmPbs2aOKigoFAoHhKBEAACDuWR7qrld2drYWL15sdRkAAABxJa5ulAAADJ2C1RutLgHAECLUAQAA2AChboRoXv2u1SUAsFJ1utUVjGicpcRoQKgDAACwAUIdEOeqq6utLgEAMAIQ6gAAAGyAUAcAAGADhDoAAAAbINQBAADYAKEujjVMnWZ1CQAAfCqa3IofhDoAAAAbINQBAADYAKFutKOVesvwkwUA4EYi1AEAANgAoQ4ArMYZcwA3AKEOADCiFazeaHUJQFwg1AEAANgAoQ4AAMAGCHUAAAA2QKgDAACwAUIdAACADRDqAAAAbIBQB9ua8dIMq0sAAGDYEOoAAABsgFAHAABgA4Q6G6GDeAAARi9CHQAMg4ap06wuAYDNEeoAAABsgFAHAABgA4Q6AMCowk/hsCtCHQAAgA0Q6gAAAGyAUAcAAGADhDoAGISC1RutLgEA+iDUAbgu1dXVVpcAAOgHoQ4AAMAGLA91586dU2FhoU6cOGGOq6urU3l5uTIzM1VVVSXDMMxpO3fu1LRp05SVlaV169ZZUDEAAED8sTTUnTt3TkuWLOkT6CKRiJYuXarZs2ertrZW9fX12rBhgySptbVVlZWVWr58uXbv3q1XXnlF27dvt6Z4AACAOGJpqLv//vu1YsWKPuM2bdqkYDCodevWqbi4WDU1NXrhhRckSa+88opycnL0+OOPq6SkRE888YQ5DRiNnrpvidUl2MrWbcVWlwAAg2ZpqHvuuef06KOP9hm3f/9+VVRUyOfzSZJKS0tVX19vTps/f74cDock6eabb9aePXsGXH4kElEoFOozAAAA2JGloa6wsPCacaFQqM94h8Mhl8ultra2a6alpaWppaVlwOWvXbtW6enp5pCfn39jNwAAACBOWH6jxNXcbre8Xm+fcYmJiero6LhmWmz8QNasWaNgMGgOTU1NQ1Y3AACAldxWF3A1v9+vurq6PuPC4bA8Ho/8fr9aW1uvGT8Qr9d7TUAEANhH9vZ9SrS6CCBOxN2ZuvLycu3evdv8u7GxUZFIRH6//5ppe/fuVW5urhVlAgAAxJW4C3Xz5s1TKBTSiy++KEmqqanRggUL5HK5VFlZqV27duk3v/mNurq69MMf/lALFy60uGLcaDNemmF1CQAAjDhx9/Or2+3W888/r+XLl6uqqkpOp1M7duyQJGVlZenpp5/WXXfdpZSUFGVkZJht2MWLGS/N0P9ndREAAGDUiYtQ17vHCEmqrKzUsWPHtGfPHlVUVCgQCJjTVq1apYULF+qDDz7Q3LlzlZKSMtzlAgAAxJ24CHX9yc7O1uLFi/udVlhY2G9zKAAAAKNV3F1TBwAAgOtHqAMAfC50owbEN0IdhhwfBAAADD1CHQBIqq6utroEWylYvdHqEoBRh1AHAHEse/s+q0vAMGpe/a7VJWAEI9QBAADYAKEOAOIAPakA+KIIdTdSdbrVFQAAgFGKUAcAAGADhDoAAAAbINQBAADYAKEOAADABgh1AIAh1TB1mtUlAKMCoQ4AAMAGCHUAAAA2QKgDAMS3Xm2Arl+1zcJCgPhGqAMAALABQh0AAIANEOoAAABsgFBnc3QSDgDA6ECoA2Cp7O37rC4BAGyBUAcAAGADhDoAAAAbINQBFqqurra6BABx4qn7llhdAkY4Qt0oQYOdAADYG6EOAADABgh1AIC4R/NMwGcj1AEYkbj+CAD6ItQBAADYAKEOAADABgh1AAAANkCoAwAMmf5ucNi6rfj//lGdPozVAPZGqAMAYJRomDrN6hIwhAh1AAAANkCoAwAAsAFCHQDYGP0LA6NH3Ia6Rx99VA6HwxwmTZokSaqrq1N5ebkyMzNVVVUlwzAsrhQAAMB6cRvqamtrtXHjRrW1tamtrU179+5VJBLR0qVLNXv2bNXW1qq+vl4bNmywulQAQ6B59btWlwAAI0pchrru7m4dOnRI8+bNU0ZGhjIyMpSamqpNmzYpGAxq3bp1Ki4uVk1NjV544QWrywVgRzS1AWCEictQd/DgQUWjUZWVlSkpKUmLFi3SqVOntH//flVUVMjn80mSSktLVV9fP+ByIpGIQqFQnwEARps+7cIBsK24DHX19fWaMmWKXn75ZR04cEBut1uPPPKIQqGQCgsLzfkcDodcLpfa2tr6Xc7atWuVnp5uDvn5+cO1CQAAAMMqLkPdAw88oNraWs2ZM0clJSV65plntGXLFkWjUXm93j7zJiYmqqOjo9/lrFmzRsFg0ByampqGo3wAAIBh57a6gM9j7Nixikajys7OVl1dXZ9p4XBYHo+n38d5vd5rQiAAAIAdxeWZuqqqKr366qvm37t375bT6dSMGTO0e/duc3xjY6MikYj8fr8VZQIAAMSNuAx1M2fO1GOPPaatW7dq8+bNWrVqlR566CHdeeedCoVCevHFFyVJNTU1WrBggVwul8UVDw8aEQUAAAOJy59fH3zwQR06dEj33HOPXC6XHnzwQdXU1Mjtduv555/X8uXLVVVVJafTqR07dlhdLgAAgOXiMtRJn9y5unbt2mvGV1ZW6tixY9qzZ48qKioUCAQsqA4AYDcFqzfqRKLVVQCDF5c/v36W7OxsLV68mEAHAEOoYeo0q0sAcB1GZKgDgMHI3r7P6hIAYMgQ6gAAAGyAUAcAAGADhDr0i+ZTAAAYWQh1AABAkjTjpRlWl4AvgFAH4IYbzjO9nFUGgE8Q6gBgKFWnW10BgFGCUIcR76n7llhdAoBRrnn1u1aXABDqAABfzPpV26wuAYAIdQAAALZAqAMAALABQh0AAIANEOoAYIgUrN5odQkARhFCHQAAgA0Q6gDARugRABi9CHUAAAA2QKgDMOxoqBUAbjxCHQAAgA0Q6gCMKtyRCsCuCHUjAH2bAgCAz0KoAwAAsAFCHQAAgA0Q6gAAAGyAUAcAAGADhDoAAAAbINQBsA2aKwEwmhHqAAyp4QhaW7cVD/k6ACDeEeoAoJfs7fusLgEjRMPUaVaXAPRBqAMAALABQh0AYNA4W2U/PKcjF6EOGEYj4c2S69MAYGQi1AEAMITWr9pmdQkYJQh1sIXm1e9aXcKo0udsXnW6dYWMQByrAIYKoQ4AAMAGCHUABoWmPwAgvhDqAAAAbGBEhrq6ujqVl5crMzNTVVVVMgzD6pIAYFTgDC0Qv0ZcqItEIlq6dKlmz56t2tpa1dfXa8OGDVaXBQAAYKkRF+o2bdqkYDCodevWqbi4WDU1NXrhhResLgsjAHcdAgDsbMSFuv3796uiokI+n0+SVFpaqvr6eourwhdRXV1tdQkAAIx4bqsLuF6hUEiFhYXm3w6HQy6XS21tbcrMzOwzbyQSUSQSMf8OBoPmMm60aKRDIYehnss9utjTo8udlxTp6uqzroHmCUcuKeKIKBQKfa55Ptm4/ztPKBTSlc+Yp3c9kcinzzOo5UgDbvulS1Hz/wPV3N88V9dz9TyhUKjfeaKOiwqFQp+6nNg8kgZ+vi71P0+f5+tT5gmFQmbN0UiHQqGQOU8oFLqmntg8kgas+dPmidVz9Ty91zXQPP3t59ixqD/Md/XzZdbzKfN81nKu3ocxV3rtw9hz0fu1ETt+Ysfh1fXE5pHUf81r0tQzMe/T5/k8y/nDcda7/tjr4uqaY8d97+3q730hNq33doVCIfN1ePW6+qu5v+UM9P7Sex/2N8//+X9+oUd+dKv5Wu792rl6Ob1f7wOtq/dyeh8bvWvu/Rr8tOV82jy9X8+954mt6/PM0/s4G+j5uvo139+xenXN5nJ6HT9XL+fzrOu65rnqPfGa94VBfPYMOM8QiC2ba+g/ncMYYXvo7//+79XV1aV169aZ4/Lz8/W///u/ys3N7TNvdXW1/uEf/mG4SwQAAEOgqalJeXl5VpcRt0bcmTq/36+6uro+48LhsDwezzXzrlmzRn/7t39r/h2NRnXhwgUFAgE5HI4bWlcoFFJ+fv4NXSYAACNNU1OT0tLSbugyDcNQOBxWTk7ODV2u3Yy4UFdeXq7nnnvO/LuxsVGRSER+v/+aeb1er7xeb59xGRkZQ10iAACjVlpa2g0PdZKUnk6XhJ9lxN0oMW/ePIVCIb344ouSpJqaGi1YsEAul8viygAAAKwz4q6pk6S33npLy5cvV1JSkpxOp3bs2KEvfelLltYUCoX4FgEAGPWCweCQnKnDZxtxP79KUmVlpY4dO6Y9e/aooqJCgUDA6pLk9Xr1/e9/X93d3eru7tb//u//as6cOQOeQRzOeYZ7fXauOx5rGql1x2NNI7XueKxppNYdjzWNpLrdbvc1lz1h+IzIM3UAAADoa8RdUwcAAIBrfaGfX9966y2dOHFCknTw4EEtXLhQHo+nzzi/36/c3Nx+p8fcdtttOnHihH7xi19o4cKF2rt3r2bNmmX+G3vMwYMHdf78eUlSSUmJLly4YC6zoKDAXMb58+dVUlKi3NzcPsuO1XLbbbeptLRU3//+99XQ0GAuy+/3m//Gaj5//rxOnz4tn8/X55q506dPa+rUqZo1a5Yk6e2339aZM2f05S9/WWVlZddsf0x/43qPf+CBB3TixIlrtmfFihXau3evWW/v7Xjrrbf0i1/8QnV1dfrTP/1TlZSU9LuPf/rTn2rWrFn66U9/qoqKCl24cEHd3d3X1HJ1XVfvz5/+9Kfq7u7us69i+/nEiRPatm2bvva1r2njxo1qbW3VlStXVFJSIpfLpeLiYh04cEDd3d1qb29XJBLRrbfequTkZJ05c0alpaXavHmzioqK1NHRodbWVkUiEd1yyy16/fXXNXXqVI0ZM0YTJkzQqVOn1N3drYaGBnk8Hp0/f16pqak6d+6cvvnNb+r8+fNqbm5Wd3e3nE6nGhsbdeHCBeXl5en222/X4cOHFQ6HFQwGVVhYqIKCAuXm5mrXrl0KhUJqamrSpEmTNG3aNB04cECZmZk6fvy4XC6XZs6cqffff1+FhYXKzMxUJBKRx+PRwYMHZRiGEhMT9dFHHykxMVH33HOPbrrpput6rfQ+Fl555RU1NjbK6XTKMAw5nU5duXJFWVlZ8nq9uv3227Vz5075/X4dOXJEGRkZSktLU1NTk86dO6dbb71Vbrdbt912m37yk5/IMAy1tLRo5syZikQimjFjhv7nf/5HZ8+eVSAQ0Mcff6y77rpLDQ0NysvLU1JSkvbu3avk5GTNmDFDv/71rxWNRhUIBHTmzBndfvvtmj59uq5cuaJLly7prbfe0qxZs3TmzBmdOnVKPT09ikaj+vKXv6xx48Zpz549Ki0tVVtbm1wul86dO6eLFy/qyJEjuummm8zGRb/zne8oHA7r5MmTeuONN3TmzBmNHz9ePp9PCQkJcrvdOnLkiCoqKnT+/Hl1d3crMTFRV65ckcfjUVtbmxYvXqzDhw/rwIEDcjgcKiwsVHNzswoLCxUMBnXp0iUZhqGenh55vV4VFxerubnZPE5aWlq0cuVK/fu//7uKioqUkZGhI0eOqKysTLm5udq+fbtcLpdOnjyppUuXqqGhQaFQyLwMw+l0auzYsbp8+bJSUlKUnJysQ4cOqampSUuXLtWYMWN05MgRjRkzRvX19QoEAjp+/Li6urrk8Xg0efJk7dixQ3PnzlVra6u+8pWv6NSpU/ra176ml156STk5Ofr973+vhIQEjRs3TkVFRaqqqlJDQ4N+85vfqLa2Vj09PQoGg1q0aJEyMzP1y1/+Uunp6crLy1M0GlVOTo7uvPNOPffcc/roo4+UkpIir9ercDis1tZWTZo0SW63W263W5cuXVJjY6OSkpJ08eJFlZWVqa2tTbfffruCwaDOnDmjzMxM7dixQ5MmTdKePXuUnJystrY2zZkzR8nJySopKVF9fb0cDofOnTunzs5OdXV1KScnRw6HQ8ePHzf3/8SJE9XT0yPDMPTlL39Zu3btUkdHhz7++GOlp6ero6NDgUBAhw4d0sSJE5WVlaU/+ZM/0TvvvKOGhgb19PTI5XJpzJgxamxs1JgxY3Tx4kXz+cjLy1NJSYlOnTqlkpIShcNhNTQ06Pz58xozZoxyc3P1j//4j2ppadHPfvYztba2atmyZfr44491/PhxZWRkqL29XWlpacrMzFQwGNThw4dVWlqqd955R8XFxcrPz5fH41Ftba0WLVqkX/3qV/rmN7+p5557Tq2trQqHw7rzzjvV2dmpcDisKVOm6MqVK/rGN76hLVu26L/+6780d+5c9fT06I033tDdd9+t5ORkSZ+0BrFr1y5FIhGlpaWpublZU6ZMkcPhUEdHhy5evKi8vDz913/9l77+9a8rHA7rd7/7nebPn6+zZ8/qzJkzevzxx7VlyxaNHTtWGRkZ+sd//Ed99atf1dSpUxUMBlVeXq53331XO3bs0Lhx48xenGbMmKH29natWLFCHR0d+rd/+zd1d3erublZc+fOlc/nUygUUnt7u6LRqL773e/q5z//uTwej1asWKHXXntNly5d0vbt23X69GmtWLFCbrdbS5YsUWNjo1JSUrRr1y6NHTtWr7/+um666SalpKSYj9+wYYP5+ZCUlKTa2loVFxero6ND3/rWt3Tbbbeprq5OjY2NOnLkiLq7u7Vv3z5lZmaqo6NDX/3qV1VUVKSf//znKi0tVVFRkRoaGuT3+83ndsuWLVq0aJF6enrU0tIiv9+vFStW6J/+6Z/0N3/zN6qurtaiRYvM5z0SiWjlypV6+eWX9Xd/93f6j//4D12+fFkLFizQ9u3bNWPGDAWDQTU3N+vP/uzP9NRTT6mzs1N5eXlqbm7W/PnzNX/+fBUVFQ0cvD6LMUiHDh0yCgoKjPz8fCM7O9tISEgwXn/99T7j3G63kZOT0+/02FBcXGzs2LHDyM3NNRISEoynn37a8Hg8xo9+9CPD4/GYj8nOzjZcLpfhcrkMp9NpJCcnG26323j99deNKVOmmMuIzZOTk9Nn2W632xg7dqyRl5dntLS0GG+++abhdrsNl8tljBkzxnC73Ybf7zecTqeRlZVlZGVlGU6n03A6nYYkw+Fw9Fm/JCM9Pd3Iz883AoGAIcmQZAQCASM7O9t8fGZmpvl3VlaWub7s7Gxj/PjxffZVQUGBsWPHDmPKlCnGL37xCyMjI8NwOByG0+k0KioqzP+npaUZqampxje+8Q3jnnvuMXw+n7n+m2++2UhOTjbS0tKMjIwMIxAIGOPHjze+973vGS6Xy1iwYIEhyVi8eLHhcrmMrKwsIzU11UhJSTH8fr+5bJ/PZ/h8PnOdmZmZRiAQMBYuXGi4XC4jLS3NcDgcRmpqquH3+42HHnrI8Pv9RlZWlpGSkmLk5eWZNUky3G634XA4+tTaeygqKjIkGcnJyX3+jQ29H+f3+w23221kZmYaLper3+VJMlJSUgxJxvTp06+Zlp6efs24pKQkc9tj42LPe+/5HA6H4Xa7DUmG0+k0XC6XkZqaah4XV88bqz8pKclIT0833G638Z3vfMcYM2aMkZ6ebqSmphoOh8PweDyGx+MxHA6H4ff7jVWrVhmZmZlGQkLCgNuYlJRkSDK8Xu+A88T2ZVlZ2TXTYvX39ziPx2NIMlJTU/tsT3/bmZSUZEyZMmXAGnqvL1brrFmz+p0nto7s7Gzj3nvvvWZ9sX3a35CYmNhnHpfLZe6jgdY10LjYv3fccYf5t8PhMLxe7zXzxPbTp9UWO+6unsftdpv7pL99GxsSEhLMx/v9/j77tHftf//3f2889NBD/W5X7Dnt/bivfOUr5ut5oHW7XK5+p8eOHafTaWRkZBh+v3/AeWPvF7FtiA2950lLS7vmted0Og2fz2ckJCT0u9yrt9/n8/V7zPT3WLfbbbjdbiMjI8PIzs42fD6feQzFjuuJEycaTz75pJGZmWl4vV7jlltuMTIzM42srCzzNezz+Yzk5GQjMzPTPN4CgYB5HGdlZRnJycnGnDlzjMTERCMvL898D4nV4ff7Da/XawQCAePb3/62cdNNNxlPPfWUkZKSYr7nxubPyMgw8vPzjUmTJhn33HOPMW3aNHO82+020tPTjW984xuGy+UyKisrDbfbbSQmJhrJycmG1+s1fD6f4Xa7jaSkJMPv9xt33HGHkZuba4wfP95cT+xzJBAIGMuXLzf3Y1ZWlnksZ2RkGBMmTDD+7d/+zcjIyDDGjBljOBwOIyEhwcjPzzfGjRtnjB8/3pBkjBkzxqisrDTy8/ON8ePHGw888ICRk5PT5/0l9pm6cuVKw+/3GwsWLDAmT55svpdPmTLFKCoqMiZPnmzMmTPHmD59uuFyuYxAIGAUFBQYkszn4Pz588axY8eMCRMmGHfeeacxduxYs/aMjAxDkjF37lwjPT3dSEhIMJ588kkjEAgYWVlZRmZmpjF27FgjMzPT8Pl8xsSJE80c8eMf/9goKioyJkyYYEyfPt3w+/1GXl6eEQgEDLfbbUyaNMkoLi42CgoKjDVr1hhut9uYPHmykZ+fbxQVFRkFBQXGuHHjjFtuucUoKSkxjxG3221MmzbNmDVrltHR0THYaGYM+pq6W2+91ex26+jRo/rnf/5n/exnP1MwGNTx48d18eJFud1u9fT0yOFwyOFwqLu7+7rW4XQ6FY1GB1MeAACA5WKdHRiGIa/Xq87OTnk8Hs2bN0/79u3T5cuXVVJSoiNHjuiOO+5QWVmZnnjiiUGta1DX1G3btk3d3d1KTk5Wd3e3UlNTNWPGDHV3d6ujo0PhcFiGYairq0vRaFQ9PT3XHegkEegAAMCI5XK5ZBiGDMNQQkKCuru75XA45Ha7deDAAd1///3q7u5WS0uLenp69Nvf/lYvv/yyOjo6BrW+QYW6N954Q6mpqUpNTVUoFNKKFSv0xhtvKDEx8ZpruQAAAEajnp4esxtTj8cjt9uthIQEpaSkKCEhQV/+8pfNrksnT56sSCSiWbNmadOmTYNa36BC3YEDB3ThwgVduHBBbW1tuvfee3XgwAEdOHCgT3s1N7p/VQAAgHjmdDrldH4SrxwOh/Lz85WYmKhvf/vbmjhxou6//37NnDlTgUBAXV1d6urq0qVLlzR27Fh1dXUpLS1N+/fvH9S6B3X368cff2zeoRaJRDR9+nSdOHFCbW1t6n2JntvtVldX16AKAwAAGGl6Xzrm9Xp1+vRpeTwedXR0qKOjQ1euXFFHR4e6urrU2toql8ulzs5O899oNKqPP/54UOseVKhLTk5WT0+PJJm383/88cfmDRHRaFRut3tQ19EBAADYQVdXl7KysuRwOOTxeOTxeJSQkCCPxyOXy6WUlBRFo1Hz2juXyyWn06mUlJRBrW9QP79OnDhRmZmZyszMVHJyslavXi2v12v+bizJDHgAAAB2Nm7cOPl8PjmdTiUkJEj6JAclJCToypUr8vl8SkxMVFJSktxutxITE+VwOJSWlian06mkpCR1dHTI4/Gou7tbEyZMGFQdgwp1CxculM/nk8/nU3Z2trZs2aJwOKyOjg7z7FzszlcAAAA7C4fDkj756TV22ZlhGPrWt76lS5cuye1268qVK4pEImpra9OVK1d0/vx5hcNhdXd3y+v16siRI5KkDz/8UHfdddeg6hhUO3UXLlxQeXm52VzJ6dOn9eyzz2rNmjWKRCK6ePGiedsuXcsCAIDRJiMjQykpKTp9+rQqKip08uRJ5eTkmL3Z3H777Xrvvfd08uRJTZkyRUeOHNFtt92maDSqLVu2DGqdgzpT5/f7VVVVJb/frzFjxmj8+PF68skn9cQTT6ioqEhpaWnyeDxyOp1yuVx9fpYFAACwu/b2djU3N6unp0e7du1SNBpVZ2enebLL6/WaXfOdOHFCycnJampq0tNPPz3odQ6679dVq1bp/fffV0tLi7KyslRXV6dQKKTS0lJlZWVJkurq6jR+/HgFAgHt27dPc+fO1UcffaTW1lZFo1GNGTNGly5d0te//nW99957Onz4sObPn6/du3ertLRUR48e1Ve+8hV99NFHCgaDamlp0ZUrV8x+EV0ul+6++27V1dVp2bJlevPNN9Xc3KzLly8rLS1NkjR58mSdPn1aLS0tSklJ0YQJE1RZWamFCxeqvLxckpSUlCSHw6Hs7GyFw2FdvnzZ7BPS3FF/6B0jNs7hcMjr9Zp3q1x9l29OTo4+/vhjeb1eOZ1OdXV16cqVK+Z0h8OhQCCgYDAoj8ejS5cuKTMzU5cvX1ZycrIuX74swzDU2dlp3pSSlpamUCiklJQU8/bns2fP9llmRkaGpE/awwkEAmajh+3t7Tp79qwSExN1+fJlc5ti256Tk6OTJ0+aP5/H+hmN/YSemJionJwcpaamav/+/eZzF3s+PuuMrMfjUWdnZ7/T+jujG2uksb/lxnoacTqdcjgc5v4ZiM/nM/dnbH2x/XB1ryVut1sOh6PP85mQkHDN85ucnKxLly596nqv5nK5zBuI3G63UlNT1dXVpXA4rGg0qsTERHm9Xl2+fHnAfdWfzzojnpiYqM7OTqWkpCgUCpnjY89x7Oam3nrfkh/r51P6ZLtj/4/xer1KS0vr099k7LG9l5uamiqHw2FOjx1rbvcnb0OxvlIdDodcLpfKy8vV3NxsvinGtjW2vS6Xy9yXvV+bvfdJWlqaenp6zIY8nU5nn15uYq+P2GNifccaf+hjNxqNqrCw0Gx/8+r1x5bV09Nj9kUajUbN47Onp6fPfg4EAmptbTVriW1r72O993Z4vV5FIhFzGbHjJz09XaFQSC6Xq8+x6XK5zPeAYDDY52Y1r9drvlYNwzC/bGdmZioajZp1Xb0PvV6v+fzE3hN6H3OxC8C7u7vl8XjU09Ojrq4u+Xy+Pq+R2P5NS0szW0ow/tDvbmx/9z4uYsdebJ84nc4+DbI6HA5zH8c4nU6VlJTo6NGjikajn/uXooGOB4fDoaSkJJWUlOjYsWPq7u7W2LFjFQwG1d7ebr43xN5vo9GoIpGIEhMTFQ6H1dnZqcTERPNz4mtf+5oOHTqkxMRENTc3KxqNmn0W9/7JLtaP7eHDh8336StXrujChQtKSUnp09ZZa2ur0tPTzf6e09LSdOnSJSUmJqq7u1vRaFRtbW0aO3asDMNQKBTSzTffrN27dyshIUFTpkxRZ2en0tLSFA6HdfjwYfl8PkWjUfPkTGpqqlpaWhQIBPTVr35V7777rlwulxITE/X4448rPz9fq1atUmJiok6dOqXx48erqKhIra2tOn36tMLhsO677z6dPHlSPp9PDz30kJ555hl1dXWpvr5e58+f15QpU1RQUKB7771XPT09am5u1m9/+1vl5eXp7bffVlJSkqZMmSKPx6PvfOc7evrpp9XW1qaTJ08qJSXF/Lz1+XyaNGmSXn31Vb333nv613/9V7MzhJaWFgWDQblcLk2cOFFz5szR22+/LemTXrLOnDmjrKwsHT16VFlZWXr//fdVVlYmr9erpqYmtbe364033tCyZcu0bNkyvfHGG5o3b54uX76sxsZGtbW16Tvf+Y6effZZff/739fPf/5zffjhh1q2bJl+/etfa/bs2Tp//rxOnTql733ve3ryySeVnp6uoqIiHT9+XHfccYcWLFigP/qjP/pcx22/x/JguwmT+r5hx+54vXpc7zf3q6fHxN48e9812/vf2GNi/37729/W6dOn9bd/+7datGiRuZ7YMmLLvHrZvcdJ6hNgei/j6g+krVu3avr06dq6davGjRunzs5OBQIBeTwenTp1So2NjQqHwxozZowmT56szs5Os5Nop9OpwsJCXb58WQcOHFBZWZnq6+vND++2tjYVFBTo1ltv1b59+3Tp0iWlpqbq17/+tTIyMtTT06MLFy5o5cqVunz5shISEnTs2DE1NDQoNzfXfOHOnTtXZ8+e1dGjR5WcnKybbrrJfHN/6aWXlJCQoHA4rLNnz+q3v/2tzp07p3/6p39SZmamPvzwQ82aNUu//OUvNXPmTF28eFE9PT26cuWKxo0bJ0kqLi42X4Aul0tLlizR4cOHdfHiRTNwO51OZWdnKxQK6fjx46qsrFRra6tKSkp0/PhxffDBB8rNzVU0GtXp06eVlJSkMWPGaPr06dq1a5dSU1MVDocVDoeVn59vdkR++vRp5eXlad++ffrrv/5rvfLKK7r//vt17tw5ffTRRzp06JDmzp2r//7v/9bYsWOVmpqq9PR0zZs3T+np6Tp69KiamprU1NQkh8Oh9PR0M7x7PB6lpKTo61//urZv366SkhIdPnzY/JAqKChQU1OTcnNzFQ6H1d7erttuu03nz5/XhQsX9N///d+aOXOmsrOz1dbWpsuXL2vmzJnavHmz5syZo46ODvODNjk5Wc3NzTpx4oQmTJigvLw8vfXWW+rs7FRSUpLKysp000036fDhw2ppaTGPs2PHjqmwsFAHDx5UTU2NvF6v3nnnHaWmpprr2bVrl06ePKmioiLl5uaaAa69vV1+v1+S1NLSomg0quTkZJ09e1ZTp07Vnj179Pbbbys7O1v33nuvzpw5o/Hjx2vWrFk6evSo+UFdV1enCRMmKDs7W++++65KS0tVV1enFStW6IMPPlBSUpJaW1s1ZswY/e53v9PEiRN1+PBhffOb39SxY8dUUlKiQCCg2tpatbe3a+vWrWpqatLs2bP1rW99Sx9//LGamprU0dEhn8+n2bNnq7GxUZIUCoVUX1+v7Oxs85gOh8OaN2+eDh8+rHPnzmnnzp366le/KumTJpfKy8vV0NCg5cuX6+jRo6qvr1dubq5+/etf684779TFixdlGIYuXbqkW265Ra2trfJ4PHr33XeVm5ur3//+95o8ebJ8Pp8qKir0y1/+UkeOHFFRUZE6OzuVmZlpfsmaOnWqTp06ZYamixcvKjk5WRkZGdq5c6fKysrkcDhUWFionp4eHTx4UOPHj9eBAwfMn2YKCwvV3t6urKwsJSUlKT09XWPGjFFra6tZ565duzRx4kS5XC7l5uZqxowZ5geEJP3P//yP/viP/1hnz55VTk6O2tvbFQwGlZeXp1OnTpkd2zc3NyscDqugoEDJycm6cuWKMjMz1djYqLy8PF26dEnt7e06ffq0fD6f/uzP/kw7duwwuzaK3RS3fft2hcNhLVq0SBs3btRXvvIVc5/ccsstamxs1PHjxzV+/Hh9+OGHmj9/vo4ePWruJ4fDoZSUFPN67MOHD2vmzJlKTU3Ve++9p5UrV+rAgQPy+XyaNm2a3nzzTaWnpys5OVl79+7VypUrtW3bNrW1tZlfOktKSszQOXHiRG3ZskUnT57UBx98YDbq6nA4NH/+fL333ntKTU3V17/+db3//vvyer2aO3eunn32WY0bN07jx4/Xe++9pz//8z8334uPHj0qj8ejjRs3yuPx6He/+50KCws1ffp0jR07VlOnTtXvf/9784L5o0ePqqioSAkJCWpubtatt96qDz/8UG63W+np6dqwYYOmTJmiX/7yl/rTP/1TXbx4UYWFhfJ6vQqHw7py5YoCgYACgYCamprU09NjfgmKiZ1MSU1N1a5du2QYho4dO6bS0lKFw2G1trYqOTlZOTk5kqT09HSdP39e58+fV3FxsY4ePapx48YpIyNDH330kSZPnqzf/va3ikQimjRpks6ePauCggKVlJQoIyNDLpdL0WhUO3fu1Ny5c82bAnqH8dhnqCTzC03vL9C9/9/7sz827eovm7G/r84Mvcf39PSYtfXeR70zR+/lxr5U9Q7xsX9jX8Ziy+z9+NgXj1hGiU2PfeHpnV1iX/pij+k9b2z5vb9A9v4yPVhfKNRZ5erghs+vtbVVBw8elN/vV1lZmdXl4Drs2LFD999//w3vuYXXEwDYw4gMdQAAAOiLr+YAAAA2QKgDAACwAUIdAACADRDqAAAAbIBQBwAAYAOEOgAAABsg1AEAANgAoQ4AAMAGCHUAAAA28P8DWCO5suM6c+UAAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "res4 = data_frame01.groupby([\"latitude\",\"longitude\"])[\"availability_365\"].sum()\n",
    "for i in res4.index.values:\n",
    "\tplt.bar(str(i),res4[i])\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 109,
   "outputs": [],
   "source": [
    "welcome = df.query(\"reviews_per_month >= 3\")\n",
    "unwelcome = df.query(\"reviews_per_month < 3\")"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "outputs": [
    {
     "data": {
      "text/plain": "86.75"
     },
     "execution_count": 110,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "welcome[\"price\"].mean()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "outputs": [
    {
     "data": {
      "text/plain": "129.05555555555554"
     },
     "execution_count": 111,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "unwelcome[\"price\"].mean()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 114,
   "outputs": [
    {
     "data": {
      "text/plain": "126.75"
     },
     "execution_count": 114,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "welcome[\"availability_365\"].mean()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 115,
   "outputs": [
    {
     "data": {
      "text/plain": "209.66666666666666"
     },
     "execution_count": 115,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "unwelcome[\"availability_365\"].mean()\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 118,
   "outputs": [
    {
     "ename": "ParserError",
     "evalue": "day is out of range for month: 0.73",
     "output_type": "error",
     "traceback": [
      "\u001B[1;31m---------------------------------------------------------------------------\u001B[0m",
      "\u001B[1;31mValueError\u001B[0m                                Traceback (most recent call last)",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:649\u001B[0m, in \u001B[0;36mparser.parse\u001B[1;34m(self, timestr, default, ignoretz, tzinfos, **kwargs)\u001B[0m\n\u001B[0;32m    648\u001B[0m \u001B[38;5;28;01mtry\u001B[39;00m:\n\u001B[1;32m--> 649\u001B[0m     ret \u001B[38;5;241m=\u001B[39m \u001B[38;5;28;43mself\u001B[39;49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43m_build_naive\u001B[49m\u001B[43m(\u001B[49m\u001B[43mres\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mdefault\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m    650\u001B[0m \u001B[38;5;28;01mexcept\u001B[39;00m \u001B[38;5;167;01mValueError\u001B[39;00m \u001B[38;5;28;01mas\u001B[39;00m e:\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:1235\u001B[0m, in \u001B[0;36mparser._build_naive\u001B[1;34m(self, res, default)\u001B[0m\n\u001B[0;32m   1233\u001B[0m         repl[\u001B[38;5;124m'\u001B[39m\u001B[38;5;124mday\u001B[39m\u001B[38;5;124m'\u001B[39m] \u001B[38;5;241m=\u001B[39m monthrange(cyear, cmonth)[\u001B[38;5;241m1\u001B[39m]\n\u001B[1;32m-> 1235\u001B[0m naive \u001B[38;5;241m=\u001B[39m \u001B[43mdefault\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mreplace\u001B[49m\u001B[43m(\u001B[49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[43mrepl\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m   1237\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m res\u001B[38;5;241m.\u001B[39mweekday \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m \u001B[38;5;129;01mand\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m res\u001B[38;5;241m.\u001B[39mday:\n",
      "\u001B[1;31mValueError\u001B[0m: day is out of range for month",
      "\nThe above exception was the direct cause of the following exception:\n",
      "\u001B[1;31mParserError\u001B[0m                               Traceback (most recent call last)",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslib.pyx:536\u001B[0m, in \u001B[0;36mpandas._libs.tslib.array_to_datetime\u001B[1;34m()\u001B[0m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslibs\\parsing.pyx:281\u001B[0m, in \u001B[0;36mpandas._libs.tslibs.parsing.parse_datetime_string\u001B[1;34m()\u001B[0m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:1368\u001B[0m, in \u001B[0;36mparse\u001B[1;34m(timestr, parserinfo, **kwargs)\u001B[0m\n\u001B[0;32m   1367\u001B[0m \u001B[38;5;28;01melse\u001B[39;00m:\n\u001B[1;32m-> 1368\u001B[0m     \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[43mDEFAULTPARSER\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mparse\u001B[49m\u001B[43m(\u001B[49m\u001B[43mtimestr\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[43mkwargs\u001B[49m\u001B[43m)\u001B[49m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:651\u001B[0m, in \u001B[0;36mparser.parse\u001B[1;34m(self, timestr, default, ignoretz, tzinfos, **kwargs)\u001B[0m\n\u001B[0;32m    650\u001B[0m \u001B[38;5;28;01mexcept\u001B[39;00m \u001B[38;5;167;01mValueError\u001B[39;00m \u001B[38;5;28;01mas\u001B[39;00m e:\n\u001B[1;32m--> 651\u001B[0m     \u001B[43msix\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mraise_from\u001B[49m\u001B[43m(\u001B[49m\u001B[43mParserError\u001B[49m\u001B[43m(\u001B[49m\u001B[38;5;28;43mstr\u001B[39;49m\u001B[43m(\u001B[49m\u001B[43me\u001B[49m\u001B[43m)\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;241;43m+\u001B[39;49m\u001B[43m \u001B[49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[38;5;124;43m: \u001B[39;49m\u001B[38;5;132;43;01m%s\u001B[39;49;00m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mtimestr\u001B[49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43me\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m    653\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m ignoretz:\n",
      "File \u001B[1;32m<string>:3\u001B[0m, in \u001B[0;36mraise_from\u001B[1;34m(value, from_value)\u001B[0m\n",
      "\u001B[1;31mParserError\u001B[0m: day is out of range for month: 0.73",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001B[1;31mTypeError\u001B[0m                                 Traceback (most recent call last)",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslib.pyx:547\u001B[0m, in \u001B[0;36mpandas._libs.tslib.array_to_datetime\u001B[1;34m()\u001B[0m\n",
      "\u001B[1;31mTypeError\u001B[0m: invalid string coercion to datetime",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001B[1;31mValueError\u001B[0m                                Traceback (most recent call last)",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:649\u001B[0m, in \u001B[0;36mparser.parse\u001B[1;34m(self, timestr, default, ignoretz, tzinfos, **kwargs)\u001B[0m\n\u001B[0;32m    648\u001B[0m \u001B[38;5;28;01mtry\u001B[39;00m:\n\u001B[1;32m--> 649\u001B[0m     ret \u001B[38;5;241m=\u001B[39m \u001B[38;5;28;43mself\u001B[39;49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43m_build_naive\u001B[49m\u001B[43m(\u001B[49m\u001B[43mres\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mdefault\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m    650\u001B[0m \u001B[38;5;28;01mexcept\u001B[39;00m \u001B[38;5;167;01mValueError\u001B[39;00m \u001B[38;5;28;01mas\u001B[39;00m e:\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:1235\u001B[0m, in \u001B[0;36mparser._build_naive\u001B[1;34m(self, res, default)\u001B[0m\n\u001B[0;32m   1233\u001B[0m         repl[\u001B[38;5;124m'\u001B[39m\u001B[38;5;124mday\u001B[39m\u001B[38;5;124m'\u001B[39m] \u001B[38;5;241m=\u001B[39m monthrange(cyear, cmonth)[\u001B[38;5;241m1\u001B[39m]\n\u001B[1;32m-> 1235\u001B[0m naive \u001B[38;5;241m=\u001B[39m \u001B[43mdefault\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mreplace\u001B[49m\u001B[43m(\u001B[49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[43mrepl\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m   1237\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m res\u001B[38;5;241m.\u001B[39mweekday \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m \u001B[38;5;129;01mand\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m res\u001B[38;5;241m.\u001B[39mday:\n",
      "\u001B[1;31mValueError\u001B[0m: day is out of range for month",
      "\nThe above exception was the direct cause of the following exception:\n",
      "\u001B[1;31mParserError\u001B[0m                               Traceback (most recent call last)",
      "Cell \u001B[1;32mIn[118], line 1\u001B[0m\n\u001B[1;32m----> 1\u001B[0m data_frame01[\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mlast_review\u001B[39m\u001B[38;5;124m\"\u001B[39m] \u001B[38;5;241m=\u001B[39m \u001B[43mpd\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mto_datetime\u001B[49m\u001B[43m(\u001B[49m\u001B[43mdata_frame01\u001B[49m\u001B[43m[\u001B[49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[38;5;124;43mlast_review\u001B[39;49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[43m]\u001B[49m\u001B[43m)\u001B[49m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\core\\tools\\datetimes.py:1051\u001B[0m, in \u001B[0;36mto_datetime\u001B[1;34m(arg, errors, dayfirst, yearfirst, utc, format, exact, unit, infer_datetime_format, origin, cache)\u001B[0m\n\u001B[0;32m   1049\u001B[0m         result \u001B[38;5;241m=\u001B[39m arg\u001B[38;5;241m.\u001B[39mmap(cache_array)\n\u001B[0;32m   1050\u001B[0m     \u001B[38;5;28;01melse\u001B[39;00m:\n\u001B[1;32m-> 1051\u001B[0m         values \u001B[38;5;241m=\u001B[39m \u001B[43mconvert_listlike\u001B[49m\u001B[43m(\u001B[49m\u001B[43marg\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43m_values\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;28;43mformat\u001B[39;49m\u001B[43m)\u001B[49m\n\u001B[0;32m   1052\u001B[0m         result \u001B[38;5;241m=\u001B[39m arg\u001B[38;5;241m.\u001B[39m_constructor(values, index\u001B[38;5;241m=\u001B[39marg\u001B[38;5;241m.\u001B[39mindex, name\u001B[38;5;241m=\u001B[39marg\u001B[38;5;241m.\u001B[39mname)\n\u001B[0;32m   1053\u001B[0m \u001B[38;5;28;01melif\u001B[39;00m \u001B[38;5;28misinstance\u001B[39m(arg, (ABCDataFrame, abc\u001B[38;5;241m.\u001B[39mMutableMapping)):\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\core\\tools\\datetimes.py:402\u001B[0m, in \u001B[0;36m_convert_listlike_datetimes\u001B[1;34m(arg, format, name, tz, unit, errors, infer_datetime_format, dayfirst, yearfirst, exact)\u001B[0m\n\u001B[0;32m    400\u001B[0m \u001B[38;5;28;01massert\u001B[39;00m \u001B[38;5;28mformat\u001B[39m \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m \u001B[38;5;129;01mor\u001B[39;00m infer_datetime_format\n\u001B[0;32m    401\u001B[0m utc \u001B[38;5;241m=\u001B[39m tz \u001B[38;5;241m==\u001B[39m \u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mutc\u001B[39m\u001B[38;5;124m\"\u001B[39m\n\u001B[1;32m--> 402\u001B[0m result, tz_parsed \u001B[38;5;241m=\u001B[39m \u001B[43mobjects_to_datetime64ns\u001B[49m\u001B[43m(\u001B[49m\n\u001B[0;32m    403\u001B[0m \u001B[43m    \u001B[49m\u001B[43marg\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m    404\u001B[0m \u001B[43m    \u001B[49m\u001B[43mdayfirst\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mdayfirst\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m    405\u001B[0m \u001B[43m    \u001B[49m\u001B[43myearfirst\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43myearfirst\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m    406\u001B[0m \u001B[43m    \u001B[49m\u001B[43mutc\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mutc\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m    407\u001B[0m \u001B[43m    \u001B[49m\u001B[43merrors\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43merrors\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m    408\u001B[0m \u001B[43m    \u001B[49m\u001B[43mrequire_iso8601\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mrequire_iso8601\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m    409\u001B[0m \u001B[43m    \u001B[49m\u001B[43mallow_object\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[38;5;28;43;01mTrue\u001B[39;49;00m\u001B[43m,\u001B[49m\n\u001B[0;32m    410\u001B[0m \u001B[43m\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m    412\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m tz_parsed \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m:\n\u001B[0;32m    413\u001B[0m     \u001B[38;5;66;03m# We can take a shortcut since the datetime64 numpy array\u001B[39;00m\n\u001B[0;32m    414\u001B[0m     \u001B[38;5;66;03m# is in UTC\u001B[39;00m\n\u001B[0;32m    415\u001B[0m     dta \u001B[38;5;241m=\u001B[39m DatetimeArray(result, dtype\u001B[38;5;241m=\u001B[39mtz_to_dtype(tz_parsed))\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\core\\arrays\\datetimes.py:2217\u001B[0m, in \u001B[0;36mobjects_to_datetime64ns\u001B[1;34m(data, dayfirst, yearfirst, utc, errors, require_iso8601, allow_object, allow_mixed)\u001B[0m\n\u001B[0;32m   2215\u001B[0m         \u001B[38;5;28;01mreturn\u001B[39;00m values\u001B[38;5;241m.\u001B[39mview(\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mi8\u001B[39m\u001B[38;5;124m\"\u001B[39m), tz_parsed\n\u001B[0;32m   2216\u001B[0m     \u001B[38;5;28;01mexcept\u001B[39;00m (\u001B[38;5;167;01mValueError\u001B[39;00m, \u001B[38;5;167;01mTypeError\u001B[39;00m):\n\u001B[1;32m-> 2217\u001B[0m         \u001B[38;5;28;01mraise\u001B[39;00m err\n\u001B[0;32m   2219\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m tz_parsed \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m:\n\u001B[0;32m   2220\u001B[0m     \u001B[38;5;66;03m# We can take a shortcut since the datetime64 numpy array\u001B[39;00m\n\u001B[0;32m   2221\u001B[0m     \u001B[38;5;66;03m#  is in UTC\u001B[39;00m\n\u001B[0;32m   2222\u001B[0m     \u001B[38;5;66;03m# Return i8 values to denote unix timestamps\u001B[39;00m\n\u001B[0;32m   2223\u001B[0m     \u001B[38;5;28;01mreturn\u001B[39;00m result\u001B[38;5;241m.\u001B[39mview(\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mi8\u001B[39m\u001B[38;5;124m\"\u001B[39m), tz_parsed\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\core\\arrays\\datetimes.py:2199\u001B[0m, in \u001B[0;36mobjects_to_datetime64ns\u001B[1;34m(data, dayfirst, yearfirst, utc, errors, require_iso8601, allow_object, allow_mixed)\u001B[0m\n\u001B[0;32m   2197\u001B[0m order: Literal[\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mF\u001B[39m\u001B[38;5;124m\"\u001B[39m, \u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mC\u001B[39m\u001B[38;5;124m\"\u001B[39m] \u001B[38;5;241m=\u001B[39m \u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mF\u001B[39m\u001B[38;5;124m\"\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m flags\u001B[38;5;241m.\u001B[39mf_contiguous \u001B[38;5;28;01melse\u001B[39;00m \u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mC\u001B[39m\u001B[38;5;124m\"\u001B[39m\n\u001B[0;32m   2198\u001B[0m \u001B[38;5;28;01mtry\u001B[39;00m:\n\u001B[1;32m-> 2199\u001B[0m     result, tz_parsed \u001B[38;5;241m=\u001B[39m \u001B[43mtslib\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43marray_to_datetime\u001B[49m\u001B[43m(\u001B[49m\n\u001B[0;32m   2200\u001B[0m \u001B[43m        \u001B[49m\u001B[43mdata\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mravel\u001B[49m\u001B[43m(\u001B[49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[38;5;124;43mK\u001B[39;49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m   2201\u001B[0m \u001B[43m        \u001B[49m\u001B[43merrors\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43merrors\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m   2202\u001B[0m \u001B[43m        \u001B[49m\u001B[43mutc\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mutc\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m   2203\u001B[0m \u001B[43m        \u001B[49m\u001B[43mdayfirst\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mdayfirst\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m   2204\u001B[0m \u001B[43m        \u001B[49m\u001B[43myearfirst\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43myearfirst\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m   2205\u001B[0m \u001B[43m        \u001B[49m\u001B[43mrequire_iso8601\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mrequire_iso8601\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m   2206\u001B[0m \u001B[43m        \u001B[49m\u001B[43mallow_mixed\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mallow_mixed\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m   2207\u001B[0m \u001B[43m    \u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m   2208\u001B[0m     result \u001B[38;5;241m=\u001B[39m result\u001B[38;5;241m.\u001B[39mreshape(data\u001B[38;5;241m.\u001B[39mshape, order\u001B[38;5;241m=\u001B[39morder)\n\u001B[0;32m   2209\u001B[0m \u001B[38;5;28;01mexcept\u001B[39;00m \u001B[38;5;167;01mValueError\u001B[39;00m \u001B[38;5;28;01mas\u001B[39;00m err:\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslib.pyx:381\u001B[0m, in \u001B[0;36mpandas._libs.tslib.array_to_datetime\u001B[1;34m()\u001B[0m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslib.pyx:613\u001B[0m, in \u001B[0;36mpandas._libs.tslib.array_to_datetime\u001B[1;34m()\u001B[0m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslib.pyx:751\u001B[0m, in \u001B[0;36mpandas._libs.tslib._array_to_datetime_object\u001B[1;34m()\u001B[0m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslib.pyx:742\u001B[0m, in \u001B[0;36mpandas._libs.tslib._array_to_datetime_object\u001B[1;34m()\u001B[0m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\pandas\\_libs\\tslibs\\parsing.pyx:281\u001B[0m, in \u001B[0;36mpandas._libs.tslibs.parsing.parse_datetime_string\u001B[1;34m()\u001B[0m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:1368\u001B[0m, in \u001B[0;36mparse\u001B[1;34m(timestr, parserinfo, **kwargs)\u001B[0m\n\u001B[0;32m   1366\u001B[0m     \u001B[38;5;28;01mreturn\u001B[39;00m parser(parserinfo)\u001B[38;5;241m.\u001B[39mparse(timestr, \u001B[38;5;241m*\u001B[39m\u001B[38;5;241m*\u001B[39mkwargs)\n\u001B[0;32m   1367\u001B[0m \u001B[38;5;28;01melse\u001B[39;00m:\n\u001B[1;32m-> 1368\u001B[0m     \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[43mDEFAULTPARSER\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mparse\u001B[49m\u001B[43m(\u001B[49m\u001B[43mtimestr\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[43mkwargs\u001B[49m\u001B[43m)\u001B[49m\n",
      "File \u001B[1;32mF:\\python38\\lib\\site-packages\\dateutil\\parser\\_parser.py:651\u001B[0m, in \u001B[0;36mparser.parse\u001B[1;34m(self, timestr, default, ignoretz, tzinfos, **kwargs)\u001B[0m\n\u001B[0;32m    649\u001B[0m     ret \u001B[38;5;241m=\u001B[39m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39m_build_naive(res, default)\n\u001B[0;32m    650\u001B[0m \u001B[38;5;28;01mexcept\u001B[39;00m \u001B[38;5;167;01mValueError\u001B[39;00m \u001B[38;5;28;01mas\u001B[39;00m e:\n\u001B[1;32m--> 651\u001B[0m     \u001B[43msix\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mraise_from\u001B[49m\u001B[43m(\u001B[49m\u001B[43mParserError\u001B[49m\u001B[43m(\u001B[49m\u001B[38;5;28;43mstr\u001B[39;49m\u001B[43m(\u001B[49m\u001B[43me\u001B[49m\u001B[43m)\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;241;43m+\u001B[39;49m\u001B[43m \u001B[49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[38;5;124;43m: \u001B[39;49m\u001B[38;5;132;43;01m%s\u001B[39;49;00m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mtimestr\u001B[49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43me\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m    653\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m ignoretz:\n\u001B[0;32m    654\u001B[0m     ret \u001B[38;5;241m=\u001B[39m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39m_build_tzaware(ret, res, tzinfos)\n",
      "File \u001B[1;32m<string>:3\u001B[0m, in \u001B[0;36mraise_from\u001B[1;34m(value, from_value)\u001B[0m\n",
      "\u001B[1;31mParserError\u001B[0m: day is out of range for month: 0.73"
     ]
    }
   ],
   "source": [
    "data_frame01[\"last_review\"] = pd.to_datetime(data_frame01[\"last_review\"])\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 124,
   "outputs": [
    {
     "data": {
      "text/plain": "<AxesSubplot:>"
     },
     "execution_count": 124,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 2 Axes>",
      "image/png": "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2ujtt9/WkCFDXMkHrOXjjz9Wdna28vPztWnTJt1///2uz9LT07V27Vrl5uaqS5cu6tSp0wXb+CMOSTp48KDr3+ihQ4dkt9vVrl27i75vfYKCgur8uUhPT1d+fr4WLFigyy+/XN27d7/gtdatW+cx6r9169ay2WwKCgpSfHy8Tp065XH+vn371LlzZ2VkZGjp0qWu4xs3blRQUJASEhIu4snQ3JEAtDCpqanatGmTevfuraqqKr300ks+XysqKkpr1qzRypUr1aNHD33++ef661//KpvNpujoaK1cuVJ/+tOfdNlll2n58uVauXKlgoPpVbKi8vJySWcH+X322WeaMmWK65debGysrrrqKmVlZWnEiBENauOPOKSzVbEXXnhBhYWFmjp1qtLS0vz+b7Z79+766KOPdPjwYX344YeuikTbtm01dOhQPfbYYw3+9n/llVdq/vz5mj9/voqKivTEE0/otttuU2RkpNLS0pSfn6958+bpwIEDmj17trZt26a7775b3/ve9/TUU09p7dq1ev/99zVx4kT97Gc/U1hYmD8fHU1dI44/gMkWLFhgDBgwoLHDgAVVVVUZP/7xj43w8HCjd+/exh//+EcjODjYOHLkiGEYhvHqq68akox9+/Y1uI1heD/wrr5rLliwwEhJSTGGDx9uREREGLfeeqtx4MCBC17zYj8rLCw0rrvuOqNVq1ZG9+7djaqqKtdn//u//2tIMgoLC+tsW5f333/f6NmzpxEREWGMGDHCOHbsmOuz9evXG6mpqUabNm2Myy67zFi5cqXrs8cff9yIiooyYmNjjYcfftioqKho8D3RMvE64BZk4cKFWrhwoT7++OPGDgXABXz99df69NNPNX/+fH322WeNHQ4siAQAABpB7969VVxcrLfeeksDBgxwHT/fgkI9e/bUhg0bAhQdrIAEAACaEPeZN+5at26tSy+9NLDBoEUjAQAAwIKYBQAAgAWRAAAAYEEkAAAAWBAJAAAAFkQCAACABZEAAABgQSQAAABY0P8HnklaYikZwfMAAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import seaborn as sns\n",
    "sns.heatmap(data_frame01.corr(),annot=True, cmap='coolwarm')"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 170,
   "outputs": [
    {
     "data": {
      "text/plain": "    neighbourhood_group       neighbourhood  latitude  longitude  \\\n0              Brooklyn          Kensington  40.64749  -73.97237   \n1             Manhattan             Midtown  40.75362  -73.98377   \n3              Brooklyn        Clinton Hill  40.68514  -73.95976   \n4             Manhattan         East Harlem  40.79851  -73.94399   \n5             Manhattan         Murray Hill  40.74767    -73.975   \n..                  ...                 ...       ...        ...   \n431            Brooklyn  Bedford-Stuyvesant  40.69025  -73.93323   \n432              Queens           Sunnyside  40.73826  -73.92458   \n433            Brooklyn          Greenpoint  40.73049  -73.96115   \n434           Manhattan        East Village  40.72956  -73.97903   \n435           Manhattan        West Village  40.73854  -74.00821   \n\n    number_of_reviews reviews_per_month calculated_host_listings_count  \\\n0                   9              0.21                              6   \n1                  45              0.38                              2   \n3                 270              4.64                              1   \n4                   9               0.1                              1   \n5                  74              0.59                              1   \n..                ...               ...                            ...   \n431                30              0.32                              3   \n432               258               2.9                              1   \n433               228              2.39                              3   \n434                60              0.65                              1   \n435                 9               0.2                              1   \n\n     availability_365  \n0               365.0  \n1               355.0  \n3               194.0  \n4                 0.0  \n5               129.0  \n..                ...  \n431              11.0  \n432             287.0  \n433               1.0  \n434               0.0  \n435             338.0  \n\n[500 rows x 8 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>number_of_reviews</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>Brooklyn</td>\n      <td>Kensington</td>\n      <td>40.64749</td>\n      <td>-73.97237</td>\n      <td>9</td>\n      <td>0.21</td>\n      <td>6</td>\n      <td>365.0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>Manhattan</td>\n      <td>Midtown</td>\n      <td>40.75362</td>\n      <td>-73.98377</td>\n      <td>45</td>\n      <td>0.38</td>\n      <td>2</td>\n      <td>355.0</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>Brooklyn</td>\n      <td>Clinton Hill</td>\n      <td>40.68514</td>\n      <td>-73.95976</td>\n      <td>270</td>\n      <td>4.64</td>\n      <td>1</td>\n      <td>194.0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>Manhattan</td>\n      <td>East Harlem</td>\n      <td>40.79851</td>\n      <td>-73.94399</td>\n      <td>9</td>\n      <td>0.1</td>\n      <td>1</td>\n      <td>0.0</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>Manhattan</td>\n      <td>Murray Hill</td>\n      <td>40.74767</td>\n      <td>-73.975</td>\n      <td>74</td>\n      <td>0.59</td>\n      <td>1</td>\n      <td>129.0</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>431</th>\n      <td>Brooklyn</td>\n      <td>Bedford-Stuyvesant</td>\n      <td>40.69025</td>\n      <td>-73.93323</td>\n      <td>30</td>\n      <td>0.32</td>\n      <td>3</td>\n      <td>11.0</td>\n    </tr>\n    <tr>\n      <th>432</th>\n      <td>Queens</td>\n      <td>Sunnyside</td>\n      <td>40.73826</td>\n      <td>-73.92458</td>\n      <td>258</td>\n      <td>2.9</td>\n      <td>1</td>\n      <td>287.0</td>\n    </tr>\n    <tr>\n      <th>433</th>\n      <td>Brooklyn</td>\n      <td>Greenpoint</td>\n      <td>40.73049</td>\n      <td>-73.96115</td>\n      <td>228</td>\n      <td>2.39</td>\n      <td>3</td>\n      <td>1.0</td>\n    </tr>\n    <tr>\n      <th>434</th>\n      <td>Manhattan</td>\n      <td>East Village</td>\n      <td>40.72956</td>\n      <td>-73.97903</td>\n      <td>60</td>\n      <td>0.65</td>\n      <td>1</td>\n      <td>0.0</td>\n    </tr>\n    <tr>\n      <th>435</th>\n      <td>Manhattan</td>\n      <td>West Village</td>\n      <td>40.73854</td>\n      <td>-74.00821</td>\n      <td>9</td>\n      <td>0.2</td>\n      <td>1</td>\n      <td>338.0</td>\n    </tr>\n  </tbody>\n</table>\n<p>500 rows × 8 columns</p>\n</div>"
     },
     "execution_count": 170,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X = data_frame01[[\"neighbourhood_group\",\"neighbourhood\",\"latitude\",\"longitude\",\"number_of_reviews\",\"reviews_per_month\",\"calculated_host_listings_count\",\"availability_365\"]]\n",
    "X"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "source": [
    "y = data_frame01[[\"price\"]]\n",
    "y\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "execution_count": 128,
   "outputs": [
    {
     "data": {
      "text/plain": "     price\n0    149.0\n1    225.0\n3     89.0\n4     80.0\n5    200.0\n..     ...\n431  145.0\n432   50.0\n433  185.0\n434  250.0\n435   80.0\n\n[500 rows x 1 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>price</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>149.0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>225.0</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>89.0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>80.0</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>200.0</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>431</th>\n      <td>145.0</td>\n    </tr>\n    <tr>\n      <th>432</th>\n      <td>50.0</td>\n    </tr>\n    <tr>\n      <th>433</th>\n      <td>185.0</td>\n    </tr>\n    <tr>\n      <th>434</th>\n      <td>250.0</td>\n    </tr>\n    <tr>\n      <th>435</th>\n      <td>80.0</td>\n    </tr>\n  </tbody>\n</table>\n<p>500 rows × 1 columns</p>\n</div>"
     },
     "execution_count": 128,
     "metadata": {},
     "output_type": "execute_result"
    }
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 174,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_3068\\1482925707.py:7: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame.\n",
      "Try using .loc[row_indexer,col_indexer] = value instead\n",
      "\n",
      "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
      "  X[i] = enc.fit_transform(X[i])\n",
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_3068\\1482925707.py:7: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame.\n",
      "Try using .loc[row_indexer,col_indexer] = value instead\n",
      "\n",
      "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
      "  X[i] = enc.fit_transform(X[i])\n"
     ]
    }
   ],
   "source": [
    "from sklearn.preprocessing import OneHotEncoder, StandardScaler\n",
    "from sklearn.preprocessing import LabelBinarizer\n",
    "from sklearn.preprocessing import LabelEncoder\n",
    "enc = LabelBinarizer()\n",
    "for i in X:\n",
    "\tif i == \"neighbourhood_group\" or i == \"neighbourhood\":\n",
    "\t\tX[i] = enc.fit_transform(X[i])\n",
    "\t\t# print(enc.fit_transform(X[i]))"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 193,
   "outputs": [
    {
     "data": {
      "text/plain": "array([[-0.11915865, -0.04476615,  0.05220998, ..., -0.78340825,\n         0.22158351,  1.46918838],\n       [-0.11915865, -0.04476615,  0.06686661, ..., -0.62495566,\n        -0.0643307 ,  1.3903625 ],\n       [-0.11915865, -0.04476615,  0.05740947, ...,  3.34567986,\n        -0.13580925,  0.12126574],\n       ...,\n       [-0.11915865, -0.04476615,  0.06367234, ...,  1.24851321,\n         0.00714786, -1.40007385],\n       [-0.11915865, -0.04476615,  0.06354391, ..., -0.37329566,\n        -0.13580925, -1.40795643],\n       [-0.11915865, -0.04476615,  0.06478405, ..., -0.79272899,\n        -0.13580925,  1.25635849]])"
     },
     "execution_count": 193,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.preprocessing import  StandardScaler\n",
    "ss = StandardScaler()\n",
    "X = ss.fit_transform(X)\n",
    "X"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 188,
   "outputs": [
    {
     "data": {
      "text/plain": "     neighbourhood_group  neighbourhood   latitude        longitude  \\\n264                    0              1  -73.99143  Entire home/apt   \n333                    0              0  -73.98917  Entire home/apt   \n\n    number_of_reviews reviews_per_month calculated_host_listings_count  \\\n264          2019/7/1                 1                            170   \n333          2019/7/5                 3                            257   \n\n     availability_365  \n264               0.0  \n333               0.0  ",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>neighbourhood_group</th>\n      <th>neighbourhood</th>\n      <th>latitude</th>\n      <th>longitude</th>\n      <th>number_of_reviews</th>\n      <th>reviews_per_month</th>\n      <th>calculated_host_listings_count</th>\n      <th>availability_365</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>264</th>\n      <td>0</td>\n      <td>1</td>\n      <td>-73.99143</td>\n      <td>Entire home/apt</td>\n      <td>2019/7/1</td>\n      <td>1</td>\n      <td>170</td>\n      <td>0.0</td>\n    </tr>\n    <tr>\n      <th>333</th>\n      <td>0</td>\n      <td>0</td>\n      <td>-73.98917</td>\n      <td>Entire home/apt</td>\n      <td>2019/7/5</td>\n      <td>3</td>\n      <td>257</td>\n      <td>0.0</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 188,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X.query(\"longitude == 'Entire home/apt' \")\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 192,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_3068\\2857849459.py:1: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame\n",
      "\n",
      "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
      "  X.replace({\"Entire home/apt\":-73.96115,\"2019/7/1\":1,\"2019/7/5\":1},inplace=True)\n"
     ]
    }
   ],
   "source": [
    "X.replace({\"Entire home/apt\":-73.96115,\"2019/7/1\":1,\"2019/7/5\":1},inplace=True)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 194,
   "outputs": [
    {
     "data": {
      "text/plain": "LinearRegression()",
      "text/html": "<style>#sk-container-id-2 {color: black;}#sk-container-id-2 pre{padding: 0;}#sk-container-id-2 div.sk-toggleable {background-color: white;}#sk-container-id-2 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-2 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-2 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-2 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-2 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-2 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-2 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-2 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-container-id-2 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-2 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-2 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-2 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-2 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-2 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-2 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-2 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-2 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-2 div.sk-item {position: relative;z-index: 1;}#sk-container-id-2 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-2 div.sk-item::before, #sk-container-id-2 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-2 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-2 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-2 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-2 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-2 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-2 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-2 div.sk-label-container {text-align: center;}#sk-container-id-2 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-2 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-2\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>LinearRegression()</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-2\" type=\"checkbox\" checked><label for=\"sk-estimator-id-2\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">LinearRegression</label><div class=\"sk-toggleable__content\"><pre>LinearRegression()</pre></div></div></div></div></div>"
     },
     "execution_count": 194,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.linear_model import LinearRegression\n",
    "lr = LinearRegression()\n",
    "lr.fit(X,y)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 195,
   "outputs": [
    {
     "data": {
      "text/plain": "Ridge()",
      "text/html": "<style>#sk-container-id-3 {color: black;}#sk-container-id-3 pre{padding: 0;}#sk-container-id-3 div.sk-toggleable {background-color: white;}#sk-container-id-3 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-3 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-3 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-3 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-3 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-3 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-3 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-3 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-container-id-3 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-3 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-3 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-3 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-3 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-3 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-3 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-3 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-3 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-3 div.sk-item {position: relative;z-index: 1;}#sk-container-id-3 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-3 div.sk-item::before, #sk-container-id-3 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-3 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-3 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-3 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-3 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-3 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-3 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-3 div.sk-label-container {text-align: center;}#sk-container-id-3 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-3 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-3\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>Ridge()</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-3\" type=\"checkbox\" checked><label for=\"sk-estimator-id-3\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">Ridge</label><div class=\"sk-toggleable__content\"><pre>Ridge()</pre></div></div></div></div></div>"
     },
     "execution_count": 195,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.linear_model import Ridge\n",
    "rd = Ridge()\n",
    "rd.fit(X,y)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 196,
   "outputs": [
    {
     "data": {
      "text/plain": "array([[190.09235011],\n       [168.81832043],\n       [ 92.10929515],\n       [157.98143202],\n       [162.47827605],\n       [158.29136588],\n       [100.51993832],\n       [156.02255569],\n       [174.55565903],\n       [166.45685372],\n       [157.43005793],\n       [157.38078646],\n       [134.34289229],\n       [201.14152559],\n       [136.19795812],\n       [125.12936364],\n       [150.07313502],\n       [119.51821491],\n       [167.08805013],\n       [173.88744937],\n       [190.14113279],\n       [188.22735186],\n       [132.90355663],\n       [171.13997533],\n       [176.40420838],\n       [118.15235978],\n       [181.70028995],\n       [114.90638594],\n       [133.10511122],\n       [115.19449739],\n       [110.07775067],\n       [144.31898986],\n       [155.33790262],\n       [108.14607515],\n       [163.46671214],\n       [143.94521855],\n       [161.65190198],\n       [161.06779501],\n       [157.02427215],\n       [125.72694974],\n       [161.61367843],\n       [102.88092686],\n       [141.3792755 ],\n       [153.52507189],\n       [152.15253931],\n       [132.79575529],\n       [149.71796196],\n       [128.97483721],\n       [ 92.65225026],\n       [169.28971315],\n       [149.02572377],\n       [174.89894553],\n       [133.70869804],\n       [124.10090327],\n       [186.89980614],\n       [150.08046835],\n       [187.27896202],\n       [147.87569511],\n       [136.66608083],\n       [162.27143725],\n       [149.60658339],\n       [186.52311853],\n       [112.0475411 ],\n       [128.64505951],\n       [156.10613333],\n       [109.0673462 ],\n       [170.93200132],\n       [182.92675598],\n       [128.51497753],\n       [136.98322645],\n       [176.41652951],\n       [118.3908903 ],\n       [105.35207324],\n       [146.06895157],\n       [154.90524734],\n       [167.21148799],\n       [144.38879426],\n       [162.1866392 ],\n       [167.19682496],\n       [164.36340649],\n       [190.54049736],\n       [142.73763805],\n       [151.79480803],\n       [186.31683538],\n       [144.05591463],\n       [131.57975443],\n       [123.20725516],\n       [194.81769303],\n       [165.8417074 ],\n       [136.79439008],\n       [128.37357929],\n       [147.57395493],\n       [142.06310886],\n       [185.37839328],\n       [105.81666334],\n       [159.53675717],\n       [153.00683977],\n       [129.81922623],\n       [188.14872933],\n       [ 85.04463387],\n       [169.24425005],\n       [110.91088486],\n       [143.30256698],\n       [108.58178491],\n       [178.22736305],\n       [125.21523341],\n       [190.70772725],\n       [176.61127162],\n       [100.28789091],\n       [190.12448344],\n       [165.16563456],\n       [101.13613517],\n       [168.34788003],\n       [168.02379771],\n       [135.33504726],\n       [108.06720393],\n       [176.04893969],\n       [169.19240543],\n       [185.68505846],\n       [150.95710103],\n       [159.48248846],\n       [148.49249272],\n       [127.42962568],\n       [144.0083359 ],\n       [136.16133383],\n       [108.64609058],\n       [170.02274476],\n       [126.23830494],\n       [185.9050556 ],\n       [181.33233469],\n       [198.66061389],\n       [138.16830389],\n       [ 90.35962456],\n       [106.76825296],\n       [153.74306137],\n       [163.66709292],\n       [144.64613277],\n       [194.13381774],\n       [ 71.95988358],\n       [120.67072331],\n       [142.53921158],\n       [113.05164793],\n       [169.43355839],\n       [138.9034694 ],\n       [180.89360989],\n       [170.92966556],\n       [154.8942979 ],\n       [140.29913178],\n       [159.26128184],\n       [149.55219385],\n       [162.48966951],\n       [158.4341462 ],\n       [133.05408364],\n       [169.17894199],\n       [116.36963198],\n       [128.72296198],\n       [130.65766493],\n       [107.41900986],\n       [177.49866381],\n       [153.87297056],\n       [167.96763281],\n       [163.66530747],\n       [106.85374137],\n       [168.11812114],\n       [213.37039764],\n       [123.2633511 ],\n       [ 93.50697644],\n       [130.2324616 ],\n       [173.74998713],\n       [190.34684226],\n       [127.31366078],\n       [175.33870361],\n       [148.5247181 ],\n       [185.99295106],\n       [139.57473475],\n       [156.81134668],\n       [186.61137485],\n       [163.36179798],\n       [167.04506205],\n       [190.99560103],\n       [111.87844915],\n       [136.56547817],\n       [141.68059017],\n       [144.81584649],\n       [171.96958333],\n       [133.13999603],\n       [194.16895376],\n       [176.62480879],\n       [159.3598577 ],\n       [147.75611364],\n       [152.8803209 ],\n       [115.89238326],\n       [180.57555759],\n       [104.18577374],\n       [242.67994864],\n       [271.00472846],\n       [247.92065348],\n       [140.7356167 ],\n       [188.54608245],\n       [141.20710678],\n       [134.91771025],\n       [216.53877051],\n       [ 36.53563781],\n       [158.52053198],\n       [192.92354305],\n       [119.70175287],\n       [115.26423418],\n       [149.998204  ],\n       [162.85675865],\n       [164.13246994],\n       [ 86.91498961],\n       [166.16798849],\n       [132.23997871],\n       [110.09075664],\n       [198.20084566],\n       [150.20055375],\n       [132.57102049],\n       [148.12166973],\n       [173.42317433],\n       [146.56185002],\n       [132.15308726],\n       [135.42035771],\n       [164.81424441],\n       [170.66400914],\n       [166.63082174],\n       [169.87465901],\n       [169.01626588],\n       [153.70205943],\n       [120.00919032],\n       [138.11410627],\n       [171.43622631],\n       [153.44689973],\n       [159.70860086],\n       [139.34534771],\n       [142.56602186],\n       [133.75656472],\n       [117.22232416],\n       [162.39636034],\n       [172.81561239],\n       [148.67267079],\n       [145.34346056],\n       [177.37504053],\n       [118.76296248],\n       [117.38220775],\n       [182.0247344 ],\n       [180.72373727],\n       [140.86236812],\n       [179.6520057 ],\n       [182.11306098],\n       [147.53712849],\n       [103.64012636],\n       [178.32135081],\n       [158.89154925],\n       [155.99238226],\n       [152.3340019 ],\n       [151.17696706],\n       [159.36277417],\n       [ 98.81838331],\n       [163.21489624],\n       [132.18106319],\n       [123.10921129],\n       [118.57475934],\n       [334.34024941],\n       [186.00809806],\n       [191.09113131],\n       [159.60164134],\n       [166.18741651],\n       [143.5545057 ],\n       [341.07985609],\n       [342.54077522],\n       [175.15394249],\n       [342.22877697],\n       [193.58093271],\n       [184.39564579],\n       [127.08730645],\n       [132.54404936],\n       [ 81.98203726],\n       [171.7753217 ],\n       [167.60648845],\n       [180.65527824],\n       [339.47700586],\n       [159.2981026 ],\n       [109.37148747],\n       [159.56180669],\n       [175.09569698],\n       [166.39758222],\n       [120.77692596],\n       [133.5429261 ],\n       [106.54678993],\n       [ 64.60196137],\n       [132.27926396],\n       [161.24104235],\n       [164.81917796],\n       [165.82069403],\n       [187.67408123],\n       [184.70802744],\n       [138.3698247 ],\n       [167.43772296],\n       [109.77247516],\n       [  4.26663612],\n       [173.43600798],\n       [161.68753133],\n       [168.55317756],\n       [123.47252039],\n       [342.19057185],\n       [146.20385479],\n       [ 34.09189549],\n       [169.70658247],\n       [ 85.00388097],\n       [145.37256228],\n       [116.4336033 ],\n       [170.59010495],\n       [177.33721349],\n       [161.77375102],\n       [165.76249306],\n       [136.79729593],\n       [136.90797315],\n       [105.75293401],\n       [163.82111755],\n       [181.24517999],\n       [180.26415273],\n       [169.14155536],\n       [145.12467515],\n       [ 82.68374906],\n       [115.97676129],\n       [120.38847515],\n       [162.95539073],\n       [115.69703004],\n       [195.730863  ],\n       [127.81354432],\n       [162.74106361],\n       [188.03678412],\n       [125.19289713],\n       [  2.        ],\n       [128.79756155],\n       [149.14059592],\n       [115.74632888],\n       [176.28600613],\n       [177.45243491],\n       [149.4424805 ],\n       [122.53565509],\n       [ 77.41614215],\n       [204.29862468],\n       [154.94509925],\n       [154.90311674],\n       [161.37335445],\n       [108.30580757],\n       [156.51927437],\n       [200.98789962],\n       [177.93411439],\n       [154.44270662],\n       [149.47441599],\n       [126.01597935],\n       [146.41526208],\n       [156.76137658],\n       [129.64184472],\n       [156.30750548],\n       [193.01216486],\n       [171.00797175],\n       [180.58082009],\n       [145.02561571],\n       [181.14658445],\n       [166.62770535],\n       [181.23304154],\n       [160.88619257],\n       [139.75760018],\n       [199.66689808],\n       [123.30459431],\n       [121.65464068],\n       [ 30.54146093],\n       [185.654455  ],\n       [ 37.4634964 ],\n       [177.48935747],\n       [160.24250558],\n       [146.2864572 ],\n       [123.25247339],\n       [128.76416856],\n       [146.50613983],\n       [142.19754334],\n       [147.72562725],\n       [159.62083806],\n       [129.02076508],\n       [137.10989245],\n       [145.09842647],\n       [148.77049953],\n       [166.22434343],\n       [ 68.59007532],\n       [141.61357267],\n       [147.76879684],\n       [183.42822331],\n       [185.99762784],\n       [153.05237795],\n       [129.65557081],\n       [155.76260501],\n       [103.63560628],\n       [157.62313039],\n       [150.25900167],\n       [146.9786427 ],\n       [151.17050326],\n       [  0.81574245],\n       [132.32055871],\n       [176.59789914],\n       [193.85218238],\n       [156.0135766 ],\n       [138.00288417],\n       [121.07884094],\n       [ 32.28561503],\n       [140.99092434],\n       [197.05387172],\n       [200.03529602],\n       [185.89415074],\n       [198.20866701],\n       [161.19817784],\n       [154.16679385],\n       [160.21499455],\n       [161.39895712],\n       [162.45565103],\n       [159.61352991],\n       [146.39003851],\n       [ 86.45815329],\n       [163.45674621],\n       [153.69064433],\n       [172.35862765],\n       [159.57326138],\n       [180.42150362],\n       [151.81491132],\n       [ 98.94670729],\n       [106.00751414],\n       [152.28981488],\n       [137.55855787],\n       [253.13027766],\n       [153.27254512],\n       [182.59734966],\n       [160.34262087],\n       [160.7371533 ],\n       [190.21307764],\n       [149.70780797],\n       [149.41202987],\n       [205.11861893],\n       [173.48185979],\n       [167.84256996],\n       [139.34903936],\n       [130.00037722],\n       [190.48939152],\n       [ 17.69986871],\n       [124.72296618],\n       [136.65602432],\n       [182.67035722],\n       [117.03327617],\n       [199.82034281],\n       [156.37250629],\n       [159.9146963 ],\n       [179.96523891],\n       [160.22838559],\n       [185.5861587 ],\n       [ 51.44820906],\n       [139.86706823],\n       [161.02507694],\n       [138.41233656],\n       [158.99539891],\n       [134.40859357],\n       [160.02445593],\n       [180.30585825],\n       [145.18535503],\n       [108.41079116],\n       [204.14084994],\n       [156.31687931],\n       [ 97.93996051],\n       [ 73.18856962],\n       [152.71051268],\n       [143.02098742],\n       [118.77864175],\n       [137.40891094],\n       [183.01849646],\n       [169.69754927],\n       [ 94.19352976],\n       [109.13478905],\n       [152.23877207],\n       [ 89.73896221],\n       [180.53341135],\n       [141.81012386],\n       [161.04723242],\n       [167.97605289],\n       [182.48403332],\n       [147.59184949],\n       [168.22598403],\n       [ 93.93714225],\n       [115.48346004],\n       [105.64825254],\n       [125.31065085],\n       [ 72.45166139],\n       [176.84221615],\n       [154.85978691],\n       [130.04538336],\n       [164.85377663],\n       [156.4572843 ],\n       [ 75.14844399],\n       [139.59899865],\n       [173.58279115],\n       [187.43603502]])"
     },
     "execution_count": 196,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "res = lr.predict(X)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 198,
   "outputs": [
    {
     "data": {
      "text/plain": "              a\n0    190.092350\n1    168.818320\n2     92.109295\n3    157.981432\n4    162.478276\n..          ...\n495  156.457284\n496   75.148444\n497  139.598999\n498  173.582791\n499  187.436035\n\n[500 rows x 1 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>a</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>190.092350</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>168.818320</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>92.109295</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>157.981432</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>162.478276</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>495</th>\n      <td>156.457284</td>\n    </tr>\n    <tr>\n      <th>496</th>\n      <td>75.148444</td>\n    </tr>\n    <tr>\n      <th>497</th>\n      <td>139.598999</td>\n    </tr>\n    <tr>\n      <th>498</th>\n      <td>173.582791</td>\n    </tr>\n    <tr>\n      <th>499</th>\n      <td>187.436035</td>\n    </tr>\n  </tbody>\n</table>\n<p>500 rows × 1 columns</p>\n</div>"
     },
     "execution_count": 198,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from pandas import DataFrame\n",
    "df2 = DataFrame(res,columns=[\"a\"])\n",
    "df2.to_csv(\"xxx.csv\")"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 205,
   "outputs": [
    {
     "data": {
      "text/plain": "     price           a\n0    149.0  190.092350\n0    110.0  190.092350\n1    225.0  168.818320\n1    285.0  168.818320\n2    130.0   92.109295\n..     ...         ...\n431  145.0  153.272545\n432   50.0  182.597350\n433  185.0  160.342621\n434  250.0  160.737153\n435   80.0  190.213078\n\n[500 rows x 2 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>price</th>\n      <th>a</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>149.0</td>\n      <td>190.092350</td>\n    </tr>\n    <tr>\n      <th>0</th>\n      <td>110.0</td>\n      <td>190.092350</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>225.0</td>\n      <td>168.818320</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>285.0</td>\n      <td>168.818320</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>130.0</td>\n      <td>92.109295</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>431</th>\n      <td>145.0</td>\n      <td>153.272545</td>\n    </tr>\n    <tr>\n      <th>432</th>\n      <td>50.0</td>\n      <td>182.597350</td>\n    </tr>\n    <tr>\n      <th>433</th>\n      <td>185.0</td>\n      <td>160.342621</td>\n    </tr>\n    <tr>\n      <th>434</th>\n      <td>250.0</td>\n      <td>160.737153</td>\n    </tr>\n    <tr>\n      <th>435</th>\n      <td>80.0</td>\n      <td>190.213078</td>\n    </tr>\n  </tbody>\n</table>\n<p>500 rows × 2 columns</p>\n</div>"
     },
     "execution_count": 205,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "res1 = y.merge(df2,left_index=True,right_index=True)\n",
    "res1"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 206,
   "outputs": [
    {
     "data": {
      "text/plain": "     price           a        diff\n0    149.0  190.092350  -41.092350\n0    110.0  190.092350  -80.092350\n1    225.0  168.818320   56.181680\n1    285.0  168.818320  116.181680\n2    130.0   92.109295   37.890705\n..     ...         ...         ...\n431  145.0  153.272545   -8.272545\n432   50.0  182.597350 -132.597350\n433  185.0  160.342621   24.657379\n434  250.0  160.737153   89.262847\n435   80.0  190.213078 -110.213078\n\n[500 rows x 3 columns]",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>price</th>\n      <th>a</th>\n      <th>diff</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>149.0</td>\n      <td>190.092350</td>\n      <td>-41.092350</td>\n    </tr>\n    <tr>\n      <th>0</th>\n      <td>110.0</td>\n      <td>190.092350</td>\n      <td>-80.092350</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>225.0</td>\n      <td>168.818320</td>\n      <td>56.181680</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>285.0</td>\n      <td>168.818320</td>\n      <td>116.181680</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>130.0</td>\n      <td>92.109295</td>\n      <td>37.890705</td>\n    </tr>\n    <tr>\n      <th>...</th>\n      <td>...</td>\n      <td>...</td>\n      <td>...</td>\n    </tr>\n    <tr>\n      <th>431</th>\n      <td>145.0</td>\n      <td>153.272545</td>\n      <td>-8.272545</td>\n    </tr>\n    <tr>\n      <th>432</th>\n      <td>50.0</td>\n      <td>182.597350</td>\n      <td>-132.597350</td>\n    </tr>\n    <tr>\n      <th>433</th>\n      <td>185.0</td>\n      <td>160.342621</td>\n      <td>24.657379</td>\n    </tr>\n    <tr>\n      <th>434</th>\n      <td>250.0</td>\n      <td>160.737153</td>\n      <td>89.262847</td>\n    </tr>\n    <tr>\n      <th>435</th>\n      <td>80.0</td>\n      <td>190.213078</td>\n      <td>-110.213078</td>\n    </tr>\n  </tbody>\n</table>\n<p>500 rows × 3 columns</p>\n</div>"
     },
     "execution_count": 206,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "res1[\"diff\"] = res1[\"price\"]-res1[\"a\"]\n",
    "res1"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 207,
   "outputs": [
    {
     "data": {
      "text/plain": "{'whiskers': [<matplotlib.lines.Line2D at 0x1c4abf94f70>,\n  <matplotlib.lines.Line2D at 0x1c4abf9f250>],\n 'caps': [<matplotlib.lines.Line2D at 0x1c4abf9f6d0>,\n  <matplotlib.lines.Line2D at 0x1c4abf9f7f0>],\n 'boxes': [<matplotlib.lines.Line2D at 0x1c4abf94be0>],\n 'medians': [<matplotlib.lines.Line2D at 0x1c4abf9fb80>],\n 'fliers': [<matplotlib.lines.Line2D at 0x1c4abf9ffd0>],\n 'means': []}"
     },
     "execution_count": 207,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "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qkpOp1OHDh2SJGVmZmrr1q1atGiRkpOTlZ6eHr2HCgAAgKP/m7eA/Y6cO3dOzc3NKioq0uTJk2PW2tvb1dbWpuLiYiUnJ3/r5wyFQkpLS1MwGFRqaupojwwAAL4Dw3n9viWR8l0gUgAAGHuG8/rNBwwCAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsNKwI+XChQvyeDzq6OiIHgsEAiosLNRtt92mqqoq9ff3R9c++OAD5efnKzMzU1u2bIl5rrq6Ok2bNk3Z2dl64403bv6nAAAA486wIuXChQtasmRJTKD09fVp6dKlKigoUFNTk1pbW7V7925J0vnz51VaWqoVK1bI7/ertrZW77//vqSvw2bVqlXasGGD/vrXv2rjxo366KOPRu0HAwAAY9uwImX58uVauXJlzLEDBw4oGAxqy5Ytmj59unw+n3bu3ClJqq2tVXZ2tjZs2KAZM2Zo48aN0bUdO3aopKRETz31lLxer5555hnt2bNnlH4sAAAw1g0rUrZv3661a9fGHDt27JiKioqUlJQkSZo1a5ZaW1ujayUlJXI4HJKk+++/X83NzdG1hx9+OPo831wbSl9fn0KhUMwDAACMX8OKFI/HM+hYKBSKOe5wOORyudTT0zNoLTU1VV1dXUN+3zfXhlJTU6O0tLToIycnZzijAwCAMWbEv93jdruVkJAQc2zixIm6cuXKoLWB40N93zfXhlJdXa1g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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.boxplot(res1[\"diff\"])"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}